本文整理汇总了PHP中OAuth::generateSignature方法的典型用法代码示例。如果您正苦于以下问题:PHP OAuth::generateSignature方法的具体用法?PHP OAuth::generateSignature怎么用?PHP OAuth::generateSignature使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OAuth
的用法示例。
在下文中一共展示了OAuth::generateSignature方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: generateLaunchData
public function generateLaunchData()
{
if (!$this->hasRequiredParams()) {
throw new InvalidLTIConfigurationException("Some required parameters are missing");
}
$this->parameters['lti_version'] = array_key_exists('lti_version', $this->parameters) ? $this->parameters['lti_version'] : 'LTI-1p0';
$this->parameters['lti_message_type'] = array_key_exists('lti_message_type', $this->parameters) ? $this->parameters['lti_message_type'] : 'basic-lti-launch-request';
$url = $this->toolConfiguration->getLaunchUrl();
//@TODO: Remove query string parameters and append them to parameters
$consumer = new \OAuth($this->consumerKey, $this->consumerSecret, OAUTH_SIG_METHOD_HMACSHA1, OAUTH_AUTH_TYPE_URI);
$timestamp = time();
$nonce = md5($timestamp);
$consumer->setTimestamp($timestamp);
$consumer->setNonce($nonce);
$signature = $consumer->generateSignature('POST', $url, $this->parameters);
$this->parameters[LaunchParameters::OAUTH_CONSUMER_KEY] = $this->consumerKey;
$this->parameters[LaunchParameters::OAUTH_SIGNATURE_METHOD] = 'HMAC-SHA1';
$this->parameters[LaunchParameters::OAUTH_VERSION] = '1.0';
$this->parameters[LaunchParameters::OAUTH_TIMESTAMP] = $timestamp;
$this->parameters[LaunchParameters::OAUTH_NONCE] = $nonce;
$this->parameters[LaunchParameters::OAUTH_SIGNATURE] = $signature;
return $this->parameters;
}
示例2: floor
$api_url = "https://mysite.byappdirect.com/api/hostedCheckout/v1/transactions";
$http_method = "POST";
$returnUrl = "http://saralam.com";
$nonce_range = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
$nonce = '';
for ($i = 0; $i < 15; ++$i) {
$rind = floor((double) rand() / (double) getrandmax() * strlen($nonce_range));
$nonce .= substr($nonce_range, $rind, 1);
}
$timestamp = time();
$version = "1.0";
$oauth = new OAuth($consumer_key, $consumer_secret);
$oauth->setNonce($nonce);
$oauth->setTimestamp($timestamp);
$oauth->setversion($version);
$sign = $oauth->generateSignature('POST', $api_url);
$oauth_header = 'Authorization: OAuth oauth_version=1.0, oauth_nonce=' . $nonce . ',oauth_timestamp=' . $timestamp . ',oauth_consumer_key=mykey, oauth_signature_method=HMAC-SHA1,oauth_signature=' . $sign;
$ch = curl_init($api_url);
$to_postdata = array("productId" => "37392", "token" => '123446788-dgfgfgfg-uytt', "type" => "PURCHASE", "user" => array("email" => 'testad123@test.com', "firstName" => "Test", "lastName" => "Test"), "company" => array("name" => "Saralam"), "returnUrl" => $returnUrl);
$data_string = json_encode($to_postdata);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json', 'Accept: application/json', $oauth_header));
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_HEADER, true);
// DO NOT RETURN HTTP HEADERS
curl_setopt($ch, CURLINFO_HEADER_OUT, true);
// enable tracking
示例3: GetSignedRequestParameters
/**
* @see OAuthHanlder::GetSignedRequestParameters()
*/
public function GetSignedRequestParameters($credentials, $url, $method = NULL)
{
if (empty($method)) {
$method = 'POST';
}
$params = array();
$params['oauth_consumer_key'] = $credentials['oauth_consumer_key'];
$params['oauth_token'] = $credentials['oauth_token'];
$params['oauth_signature_method'] = 'HMAC-SHA1';
$params['oauth_timestamp'] = time();
$params['oauth_nonce'] = uniqid();
$params['oauth_version'] = '1.0a';
$oauth = new OAuth($credentials['oauth_consumer_key'], $credentials['oauth_consumer_secret'], OAUTH_SIG_METHOD_HMACSHA1, OAUTH_AUTH_TYPE_AUTHORIZATION);
$oauth->setRequestEngine(OAUTH_REQENGINE_CURL);
$oauth->setVersion('1.0a');
$oauth->setToken($credentials['oauth_token'], $credentials['oauth_token_secret']);
$oauth->setTimestamp($params['oauth_timestamp']);
$oauth->setNonce($params['oauth_nonce']);
$oauth->setVersion($params['oauth_version']);
$signature = $oauth->generateSignature(self::$OAUTH_METHOD_ENUMS[$method], $url);
$params['oauth_signature'] = $signature;
return $params;
}