Class yii\authclient\OAuth2
| Inheritance | yii\authclient\OAuth2 » yii\authclient\BaseOAuth » yii\authclient\BaseClient » yii\base\Component | 
|---|---|
| Implements | yii\authclient\ClientInterface | 
| Subclasses | yii\authclient\clients\Facebook, yii\authclient\clients\GitHub, yii\authclient\clients\GoogleHybrid, yii\authclient\clients\GoogleOAuth, yii\authclient\clients\LinkedIn, yii\authclient\clients\Live, yii\authclient\clients\VKontakte, yii\authclient\clients\YandexOAuth | 
| Available since version | 2.0 | 
OAuth2 serves as a client for the OAuth 2 flow.
In oder to acquire access token perform following sequence:
use yii\authclient\OAuth2;
$oauthClient = new OAuth2();
$url = $oauthClient->buildAuthUrl(); // Build authorization URL
Yii::$app->getResponse()->redirect($url); // Redirect to authorization URL.
// After user returns at our site:
$code = $_GET['code'];
$accessToken = $oauthClient->fetchAccessToken($code); // Get access token
See also http://oauth.net/2/.
Public Properties
| Property | Type | Description | Defined By | 
|---|---|---|---|
| $apiBaseUrl | string | API base URL. | yii\authclient\BaseOAuth | 
| $authUrl | string | Authorize URL. | yii\authclient\BaseOAuth | 
| $autoRefreshAccessToken | boolean | Whether to automatically perform 'refresh access token' request on expired access token. | yii\authclient\BaseOAuth | 
| $clientId | string | OAuth client ID. | yii\authclient\OAuth2 | 
| $clientSecret | string | OAuth client secret. | yii\authclient\OAuth2 | 
| $scope | string | Auth request scope. | yii\authclient\BaseOAuth | 
| $tokenUrl | string | Token request URL endpoint. | yii\authclient\OAuth2 | 
| $version | string | Protocol version. | yii\authclient\OAuth2 | 
Public Methods
Protected Methods
| Method | Description | Defined By | 
|---|---|---|
| apiInternal() | Performs request to the OAuth API. | yii\authclient\OAuth2 | 
| composeRequestCurlOptions() | Composes HTTP request CUrl options, which will be merged with the default ones. | yii\authclient\OAuth2 | 
| composeUrl() | Composes URL from base URL and GET params. | yii\authclient\BaseOAuth | 
| convertXmlToArray() | Converts XML document to array. | yii\authclient\BaseOAuth | 
| createSignatureMethod() | Creates signature method instance from its configuration. | yii\authclient\BaseOAuth | 
| createToken() | Creates token from its configuration. | yii\authclient\OAuth2 | 
| defaultCurlOptions() | Returns default cURL options. | yii\authclient\BaseOAuth | 
| defaultName() | Generates service name. | yii\authclient\BaseClient | 
| defaultNormalizeUserAttributeMap() | Returns the default \yii\authclient\normalizeUserAttributeMap value. | yii\authclient\BaseClient | 
| defaultReturnUrl() | Composes default \yii\authclient\returnUrl value. | yii\authclient\OAuth2 | 
| defaultTitle() | Generates service title. | yii\authclient\BaseClient | 
| defaultViewOptions() | Returns the default \yii\authclient\viewOptions value. | yii\authclient\BaseClient | 
| determineContentTypeByHeaders() | Attempts to determine HTTP request content type by headers. | yii\authclient\BaseOAuth | 
| determineContentTypeByRaw() | Attempts to determine the content type from raw content. | yii\authclient\BaseOAuth | 
| getState() | Returns persistent state value. | yii\authclient\BaseOAuth | 
| getStateKeyPrefix() | Returns session key prefix, which is used to store internal states. | yii\authclient\BaseOAuth | 
| initUserAttributes() | Initializes authenticated user attributes. | yii\authclient\BaseClient | 
| mergeCurlOptions() | Merge CUrl options. | yii\authclient\BaseOAuth | 
| normalizeUserAttributes() | Normalize given user attributes according to \yii\authclient\normalizeUserAttributeMap. | yii\authclient\BaseClient | 
| processResponse() | Processes raw response converting it to actual data. | yii\authclient\BaseOAuth | 
| removeState() | Removes persistent state value. | yii\authclient\BaseOAuth | 
| restoreAccessToken() | Restores access token. | yii\authclient\BaseOAuth | 
| saveAccessToken() | Saves token as persistent state. | yii\authclient\BaseOAuth | 
| sendRequest() | Sends HTTP request. | yii\authclient\BaseOAuth | 
| setState() | Sets persistent state. | yii\authclient\BaseOAuth | 
Constants
| Constant | Value | Description | Defined By | 
|---|---|---|---|
| CONTENT_TYPE_AUTO | 'auto' | yii\authclient\BaseOAuth | |
| CONTENT_TYPE_JSON | 'json' | yii\authclient\BaseOAuth | |
| CONTENT_TYPE_URLENCODED | 'urlencoded' | yii\authclient\BaseOAuth | |
| CONTENT_TYPE_XML | 'xml' | yii\authclient\BaseOAuth | 
Property Details
Method Details
Performs request to the OAuth API.
| protected array apiInternal ( $accessToken, $url, $method, array $params, array $headers ) | ||
| $accessToken | yii\authclient\OAuthToken | Actual access token. | 
| $url | string | Absolute API URL. | 
| $method | string | Request method. | 
| $params | array | Request parameters. | 
| $headers | array | Additional request headers. | 
| return | array | API response. | 
|---|---|---|
| throws | \yii\base\Exception | on failure. | 
Composes user authorization URL.
| public string buildAuthUrl ( array $params = [] ) | ||
| $params | array | Additional auth GET params. | 
| return | string | Authorization URL. | 
|---|---|---|
Composes HTTP request CUrl options, which will be merged with the default ones.
| protected array composeRequestCurlOptions ( $method, $url, array $params ) | ||
| $method | string | Request type. | 
| $url | string | Request URL. | 
| $params | array | Request params. | 
| return | array | CUrl options. | 
|---|---|---|
| throws | \yii\base\Exception | on failure. | 
Creates token from its configuration.
| protected yii\authclient\OAuthToken createToken ( array $tokenConfig = [] ) | ||
| $tokenConfig | array | Token configuration. | 
| return | yii\authclient\OAuthToken | Token instance. | 
|---|---|---|
Composes default \yii\authclient\returnUrl value.
| protected string defaultReturnUrl ( ) | ||
| return | string | Return URL. | 
|---|---|---|
Fetches access token from authorization code.
| public yii\authclient\OAuthToken fetchAccessToken ( $authCode, array $params = [] ) | ||
| $authCode | string | Authorization code, usually comes at $_GET['code']. | 
| $params | array | Additional request params. | 
| return | yii\authclient\OAuthToken | Access token. | 
|---|---|---|
Gets new auth token to replace expired one.
| public yii\authclient\OAuthToken refreshAccessToken ( yii\authclient\OAuthToken $token ) | ||
| $token | yii\authclient\OAuthToken | Expired auth token. | 
| return | yii\authclient\OAuthToken | New auth token. | 
|---|---|---|