Проблемы с OAuth в Twitch-api-v5-npm (API-интерфейс Twitch для node.js) - PullRequest
0 голосов
/ 06 сентября 2018

Этот модуль (https://www.npmjs.com/package/twitch-api-v5) сообщает мне, что мой токен OAuth недействителен. Я не уверен, почему. Я должен использовать неправильную информацию или что-то в этом роде, но мне все в порядке. Надеюсь, кто-то знаком хватит с этими особенностями, чтобы выручить меня.

api.clientID = auth.client_id;

req_url = 'https://id.twitch.tv/oauth2/token?client_id='+auth.client_id+'&client_secret='+auth.client_secret+'&grant_type=client_credentials&scope=channel_subscriptions+user_subscriptions+channel_check_subscription';


        var req_options = {
            url:req_url,
            method: 'POST'
        }
        request(req_options, function (error, response, body) {
            var temp = JSON.parse(body);
            console.log(temp);
            access_token = temp.access_token;
        });

Это возвращает штраф:

    { access_token: 'xxxxx',
      expires_in: 5664903,
      scope:
       [ 'channel_subscriptions',
         'user_subscriptions',
         'channel_check_subscription' ],
      token_type: 'bearer' }

Затем я пытаюсь запустить этот код с этим токеном:

api.channels.subs({auth:access_token,channelID:auth.id},(err,res)=>{
    if(err){
        console.log("API Error: "+err);     
    }else{
        console.log(res);
    }   
})

И это не очень хорошо:

{ error: 'Unauthorized',
  status: 401,
  message: 'invalid oauth token' }

Итак, я проверяю действительность моего токена:

api.auth.checkToken({auth:access_token},(err,res)=>{
    if(err){
        console.log("API Error: "+err); 
    }else{
        console.log(res);           
    }   
})

И все в порядке:

{ token:
   { valid: true,
     authorization:
      { scopes: [Array],
        created_at: '2018-09-06T12:17:43Z',
        updated_at: '2018-09-06T12:17:43Z' },
     client_id: 'xxxxx',
     expires_in: 5664603 } }
...