Sök…


Skicka användaren till godkänd slutpunkt för att få godkännandekoden

Du skickar först användaren till slutpunkten för Twitch-godkännande. Den här webbadressen består av en bas-godkännande-URL ( https://api.twitch.tv/kraken/oauth2/authorize ) och frågesträngparametrar som definierar vad du begär. De nödvändiga parametrarna är response_type , client_id , redirect_uri och scope .

För flödet för godkännandekod är parametern response_type alltid inställd på code . Detta betyder att du begär en auktoriseringskod från Twitch API.

redirect_uri är där användaren kommer att omdirigeras när de godkänner de tillämpningsområden som din ansökan begärde. Detta måste matcha vad du registrerade på din anslutningssida för Twitch-konto.

client_id är en unik identifierare för din applikation. Du hittar ditt klient-ID på sidan Anslutningar också.

scope definierar vad du har tillgång till på användarens vägnar. Du bör bara begära det minimum som du behöver för att din ansökan ska fungera. Du hittar listan med omfattningar på Twitch API GitHub .

Den state parametern stöds också för att skydda mot cross-site scripting attacker. Den state parameter kommer att ingå på redirect_uri när användaren godkänner din ansökan.

  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]

Hämta behörighetskoden från frågesträngen

När användaren går till godkännandepunkten kommer de att bli ombedda att ge din ansökan tillstånd till de områden du har begärt. De kan avslå detta, så du måste se till att ta hänsyn till det i din kod. Efter att de har tillåtit din applikationsåtkomst omdirigeras användaren till URL: en du angav i redirect_uri . Frågesträngen kommer nu att ha en code parameter som är behörighetskoden som du kan byta till en OAuth token.

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

Byt ut koden för OAuth-token

Nu när du har en auktoriseringskod kan du ringa en POST till token-slutpunkten ( https://api.twitch.tv/kraken/oauth2/token ) för att få ett OAuth-token. Du får ett JSON-kodat åtkomsttoken, uppdatera token och en lista över de tillämpningsområden som godkänts av användaren. Du kan nu använda det tokenet för att göra autentiserade förfrågningar på användarens vägnar.

<?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
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow