Verzeichnisstruktur phpBB-3.3.15
- Veröffentlicht
- 28.08.2024
So funktioniert es
|
Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück |
Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis. |
|
(Beispiel Datei-Icons)
|
Auf das Icon klicken um den Quellcode anzuzeigen |
Yandex.php
01 <?php
02
03 namespace OAuth\OAuth2\Service;
04
05 use OAuth\OAuth2\Token\StdOAuth2Token;
06 use OAuth\Common\Http\Exception\TokenResponseException;
07 use OAuth\Common\Http\Uri\Uri;
08 use OAuth\Common\Consumer\CredentialsInterface;
09 use OAuth\Common\Http\Client\ClientInterface;
10 use OAuth\Common\Storage\TokenStorageInterface;
11 use OAuth\Common\Http\Uri\UriInterface;
12
13 class Yandex extends AbstractService
14 {
15 /**
16 * Defined scopes
17 *
18 * @link https://tech.yandex.ru/money/doc/dg/concepts/protocol-rights-docpage/
19 */
20 const SCOPE_ACCOUNT_INFO = 'account-info';
21
22 public function __construct(
23 CredentialsInterface $credentials,
24 ClientInterface $httpClient,
25 TokenStorageInterface $storage,
26 $scopes = array(),
27 UriInterface $baseApiUri = null
28 ) {
29 parent::__construct($credentials, $httpClient, $storage, $scopes, $baseApiUri);
30
31 if (null === $baseApiUri) {
32 $this->baseApiUri = new Uri('https://login.yandex.ru/');
33 }
34 }
35
36 /**
37 * {@inheritdoc}
38 */
39 public function getAuthorizationEndpoint()
40 {
41 return new Uri('https://oauth.yandex.ru/authorize');
42 }
43
44 /**
45 * {@inheritdoc}
46 */
47 public function getAccessTokenEndpoint()
48 {
49 return new Uri('https://oauth.yandex.ru/token');
50 }
51
52 /**
53 * {@inheritdoc}
54 */
55 protected function parseAccessTokenResponse($responseBody)
56 {
57 $data = json_decode($responseBody, true);
58 if (null === $data || !is_array($data)) {
59 throw new TokenResponseException('Unable to parse response.');
60 } elseif (isset($data['error'])) {
61 throw new TokenResponseException('Error in retrieving token: "' . $data['error'] . '"');
62 }
63
64 $token = new StdOAuth2Token();
65 $token->setAccessToken($data['access_token']);
66 $token->setLifeTime($data['expires_in']);
67
68 if (isset($data['refresh_token'])) {
69 $token->setRefreshToken($data['refresh_token']);
70 unset($data['refresh_token']);
71 }
72
73 unset($data['access_token']);
74 unset($data['expires_in']);
75 $token->setExtraParams($data);
76
77 return $token;
78 }
79
80 /**
81 * {@inheritdoc}
82 */
83 protected function getAuthorizationMethod()
84 {
85 return static::AUTHORIZATION_METHOD_QUERY_STRING_V5;
86 }
87
88
89 }
90