Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Public Member Functions | Protected Member Functions | Protected Attributes
Zend_Oauth_Http_RequestToken Class Reference
Inheritance diagram for Zend_Oauth_Http_RequestToken:
Zend_Oauth_Http

Public Member Functions

 execute ()
 
 assembleParams ()
 
 getRequestSchemeHeaderClient (array $params)
 
 getRequestSchemePostBodyClient (array $params)
 
- Public Member Functions inherited from Zend_Oauth_Http
 __construct (Zend_Oauth_Consumer $consumer, array $parameters=null, Zend_Oauth_Http_Utility $utility=null)
 
 setMethod ($method)
 
 getMethod ()
 
 setParameters (array $customServiceParameters)
 
 getParameters ()
 
 getConsumer ()
 
 startRequestCycle (array $params)
 
 getRequestSchemeQueryStringClient (array $params, $url)
 

Protected Member Functions

 _attemptRequest (array $params)
 
- Protected Member Functions inherited from Zend_Oauth_Http
 _assessRequestAttempt (Zend_Http_Response $response=null)
 
 _toAuthorizationHeader (array $params, $realm=null)
 

Protected Attributes

 $_httpClient = null
 
- Protected Attributes inherited from Zend_Oauth_Http
 $_parameters = array()
 
 $_consumer = null
 
 $_preferredRequestScheme = null
 
 $_preferredRequestMethod = Zend_Oauth::POST
 
 $_httpUtility = null
 

Detailed Description

Definition at line 34 of file RequestToken.php.

Member Function Documentation

◆ _attemptRequest()

_attemptRequest ( array  $params)
protected

Attempt a request based on the current configured OAuth Request Scheme and return the resulting HTTP Response.

Parameters
array$params
Returns
Zend_Http_Response

Definition at line 146 of file RequestToken.php.

147  {
148  switch ($this->_preferredRequestScheme) {
150  $httpClient = $this->getRequestSchemeHeaderClient($params);
151  break;
153  $httpClient = $this->getRequestSchemePostBodyClient($params);
154  break;
156  $httpClient = $this->getRequestSchemeQueryStringClient($params,
157  $this->_consumer->getRequestTokenUrl());
158  break;
159  }
160  return $httpClient->request();
161  }
const REQUEST_SCHEME_HEADER
Definition: Oauth.php:33
getRequestSchemeQueryStringClient(array $params, $url)
Definition: Http.php:204
const REQUEST_SCHEME_QUERYSTRING
Definition: Oauth.php:35
getRequestSchemeHeaderClient(array $params)
getRequestSchemePostBodyClient(array $params)
$params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE]
Definition: website.php:18
const REQUEST_SCHEME_POSTBODY
Definition: Oauth.php:34

◆ assembleParams()

assembleParams ( )

Assemble all parameters for an OAuth Request Token request.

Returns
array

Definition at line 61 of file RequestToken.php.

62  {
63  $params = array(
64  'oauth_consumer_key' => $this->_consumer->getConsumerKey(),
65  'oauth_nonce' => $this->_httpUtility->generateNonce(),
66  'oauth_timestamp' => $this->_httpUtility->generateTimestamp(),
67  'oauth_signature_method' => $this->_consumer->getSignatureMethod(),
68  'oauth_version' => $this->_consumer->getVersion(),
69  );
70 
71  // indicates we support 1.0a
72  if ($this->_consumer->getCallbackUrl()) {
73  $params['oauth_callback'] = $this->_consumer->getCallbackUrl();
74  } else {
75  $params['oauth_callback'] = 'oob';
76  }
77 
78  if (!empty($this->_parameters)) {
79  $params = array_merge($params, $this->_parameters);
80  }
81 
82  $params['oauth_signature'] = $this->_httpUtility->sign(
83  $params,
84  $this->_consumer->getSignatureMethod(),
85  $this->_consumer->getConsumerSecret(),
86  null,
88  $this->_consumer->getRequestTokenUrl()
89  );
90 
91  return $params;
92  }
$_preferredRequestMethod
Definition: Http.php:65
$params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE]
Definition: website.php:18

◆ execute()

execute ( )

Initiate a HTTP request to retrieve a Request Token.

Returns
Zend_Oauth_Token_Request

Definition at line 48 of file RequestToken.php.

49  {
50  $params = $this->assembleParams();
52  $return = new Zend_Oauth_Token_Request($response);
53  return $return;
54  }
$response
Definition: 404.php:11
startRequestCycle(array $params)
Definition: Http.php:169
$params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE]
Definition: website.php:18

◆ getRequestSchemeHeaderClient()

getRequestSchemeHeaderClient ( array  $params)

Generate and return a HTTP Client configured for the Header Request Scheme specified by OAuth, for use in requesting a Request Token.

Parameters
array$params
Returns
Zend_Http_Client

Definition at line 101 of file RequestToken.php.

102  {
103  $headerValue = $this->_httpUtility->toAuthorizationHeader(
104  $params
105  );
106  $client = Zend_Oauth::getHttpClient();
107  $client->setUri($this->_consumer->getRequestTokenUrl());
108  $client->setHeaders('Authorization', $headerValue);
109  $rawdata = $this->_httpUtility->toEncodedQueryString($params, true);
110  if (!empty($rawdata)) {
111  $client->setRawData($rawdata, 'application/x-www-form-urlencoded');
112  }
113  $client->setMethod($this->_preferredRequestMethod);
114  return $client;
115  }
static getHttpClient()
Definition: Oauth.php:69
$params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE]
Definition: website.php:18

◆ getRequestSchemePostBodyClient()

getRequestSchemePostBodyClient ( array  $params)

Generate and return a HTTP Client configured for the POST Body Request Scheme specified by OAuth, for use in requesting a Request Token.

Parameters
array$params
Returns
Zend_Http_Client

Definition at line 124 of file RequestToken.php.

125  {
126  $client = Zend_Oauth::getHttpClient();
127  $client->setUri($this->_consumer->getRequestTokenUrl());
128  $client->setMethod($this->_preferredRequestMethod);
129  $client->setRawData(
130  $this->_httpUtility->toEncodedQueryString($params)
131  );
132  $client->setHeaders(
135  );
136  return $client;
137  }
const ENC_URLENCODED
Definition: Client.php:109
const CONTENT_TYPE
Definition: Client.php:103
static getHttpClient()
Definition: Oauth.php:69
$params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE]
Definition: website.php:18

Field Documentation

◆ $_httpClient

$_httpClient = null
protected

Definition at line 41 of file RequestToken.php.


The documentation for this class was generated from the following file: