コード例 #1
0
 /**
  * Get base signature string
  *
  * @param  array $params
  * @param  null|string $method
  * @param  null|string $url
  * @return string
  */
 protected function _getBaseSignatureString(array $params, $method = null, $url = null)
 {
     $encodedParams = array();
     foreach ($params as $key => $value) {
         $encodedParams[Zend_Oauth_Http_Utility::urlEncode($key)] = Zend_Oauth_Http_Utility::urlEncode($value);
     }
     $baseStrings = array();
     if (isset($method)) {
         $baseStrings[] = strtoupper($method);
     }
     if (isset($url)) {
         // should normalise later
         $baseStrings[] = Zend_Oauth_Http_Utility::urlEncode($this->normaliseBaseSignatureUrl($url));
     }
     if (isset($encodedParams['oauth_signature'])) {
         unset($encodedParams['oauth_signature']);
     }
     $baseStrings[] = Zend_Oauth_Http_Utility::urlEncode($this->_toByteValueOrderedQueryString($encodedParams));
     return implode('&', $baseStrings);
 }
コード例 #2
0
ファイル: Http.php プロジェクト: bizanto/Hooked
 /**
  * Generates a valid OAuth Authorization header based on the provided
  * parameters and realm.
  *
  * @param  array $params
  * @param  string $realm
  * @return string
  */
 protected function _toAuthorizationHeader(array $params, $realm = null)
 {
     $headerValue = array();
     $headerValue[] = 'OAuth realm="' . $realm . '"';
     foreach ($params as $key => $value) {
         if (!preg_match("/^oauth_/", $key)) {
             continue;
         }
         $headerValue[] = Zend_Oauth_Http_Utility::urlEncode($key) . '="' . Zend_Oauth_Http_Utility::urlEncode($value) . '"';
     }
     return implode(",", $headerValue);
 }
コード例 #3
0
ファイル: UtilityTest.php プロジェクト: netvlies/zf
 public function testUrlEncodeCorrectlyEncodesU3001()
 {
     $string = '、';
     $this->assertEquals('%E3%80%81', Zend_Oauth_Http_Utility::urlEncode($string));
 }
コード例 #4
0
ファイル: Request.php プロジェクト: EvanDotPro/cosmos
 /**
  * Get OAuth 'Authentication' header string
  *
  * @return string
  */
 public function getOauthHeader()
 {
     $this->_oauthParams['oauth_timestamp'] = time();
     $this->_oauthParams['oauth_nonce'] = md5(uniqid(rand(), true));
     // http://oauth.googlecode.com/svn/spec/ext/body_hash/1.0/drafts/5/spec.html
     // Haven't fully implemented that spec, but the idea is the same.
     // TODO: The server should validate this hash to be more secure
     $this->_oauthParams['oauth_body_hash'] = $this->_getRequestHash();
     $this->_generateOauthSignature('POST');
     $headerValue = array();
     foreach ($this->_oauthParams as $key => $value) {
         $headerValue[] = Zend_Oauth_Http_Utility::urlEncode($key) . '="' . Zend_Oauth_Http_Utility::urlEncode($value) . '"';
     }
     return implode(",", $headerValue);
 }