Buscar..


Envíe al usuario al punto final autorizado para obtener el código de autorización.

Primero enviará al usuario al punto final de autorización de Twitch. Esta URL se compone de la URL de autorización básica ( https://api.twitch.tv/kraken/oauth2/authorize ) y los parámetros de cadena de consulta que definen lo que está solicitando. Los parámetros requeridos son response_type , client_id , redirect_uri y scope .

Para el flujo de código de autorización, el parámetro response_type siempre se establece en code . Esto significa que está solicitando un código de autorización de la API de Twitch.

redirect_uri es donde el usuario será redirigido después de aprobar los ámbitos que su aplicación solicitó. Esto debe coincidir con lo que se registró en la página de conexiones de su cuenta de Twitch.

El client_id es un identificador único para su aplicación. También puede encontrar su ID de cliente en la página de Conexiones.

El scope define a qué tiene acceso en nombre del usuario. Solo debe solicitar el mínimo que necesita para que su aplicación funcione. Puede encontrar la lista de ámbitos en la API de Twitch GitHub .

El parámetro de state también es compatible para ayudar a proteger contra ataques de scripts entre sitios. El parámetro de state se incluirá en redirect_uri cuando el usuario autorice su aplicación.

  https://api.twitch.tv/kraken/oauth2/authorize
    ?response_type=code
    &client_id=[your client ID]
    &redirect_uri=[your registered redirect URI]
    &scope=[space separated list of scopes]
    &state=[your provided unique token]

Obtenga el código de autorización de la cadena de consulta

Cuando el usuario vaya al punto final de autorización, se le pedirá que otorgue permiso a su aplicación a los ámbitos que haya solicitado. Pueden rechazar esto, por lo que debe asegurarse de tener eso en cuenta en su código. Una vez que hayan permitido el acceso a su aplicación, el usuario será redirigido a la URL que especificó en redirect_uri . La cadena de consulta ahora tendrá un parámetro de code , que es el código de autorización que puede intercambiar por un token de OAuth.

<?php
  $authCode = $_GET['code'];
?>

Intercambia el código por el token OAuth

Ahora que tiene un código de autorización, puede realizar una POST al punto final del token ( https://api.twitch.tv/kraken/oauth2/token ) para obtener un token OAuth. Recibirá un token de acceso codificado JSON, un token de actualización y una lista de los ámbitos aprobados por el usuario. Ahora puede usar ese token para realizar solicitudes autenticadas en nombre del usuario.

<?php
  $authCode = $_GET['code'];

  $parameterValues = array(
    'client_id' => '...',
    'client_secret' => '...',
    'grant_type' => 'authorization_code',
    'redirect_uri' => 'http://localhost/',
    'code' => $authCode
  );

  $postValues = http_build_query($parameterValues, '', '&');

  $ch = curl_init();
    
  curl_setopt_array($ch, array(
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_URL => 'https://api.twitch.tv/kraken/oauth2/token',
    CURLOPT_POST => 1,
    CURLOPT_POSTFIELDS => $postValues
  ));
            
  $response = curl_exec($ch);
  curl_close($ch);

  echo $response;
?>


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow