npm 请求 - 用于抽搐数据的自定义 HTTP Headers

npm request - custom HTTP Headers for twitch data

我有一项任务是从 twitch API(获取热门游戏)中获取数据。我使用 "request" 模块连接到 twitch API。但是,当我调用请求时,由于缺少 OAuth 令牌,终端显示状态代码为 401。我想知道选项object的headers是否有错误。

const request = require('request');

const options = {
  url: 'https://api.twitch.tv/helix/games/top',
  headers: {
    'User-Agent': 'myclientID'
  }
};

function callback(error, response, body) {
  console.log(response.statusCode)
  const info = JSON.parse(body);
  console.log(info)

}

request(options, callback);

根据 twitch API docsclient-id 应单独发送 Client-ID header,而不是 User-Agent。此外,您需要传递授权令牌(App Access Token 或 User OAuth Token)

curl -H 'Client-ID: uo6dggojyb8d6soh92zknwmi5ej1q2' \
-H 'Authorization: Bearer cfabdegwdoklmawdzdo98xt2fo512y' \
-X GET 'https://api.twitch.tv/helix/games/top'

在node.jsrequest格式中,应该是这样的:

var request = require('request');
var options = {
  'method': 'GET',
  'url': 'https://api.twitch.tv/helix/games/top',
  'headers': {
    'Client-ID': 'uo6dggojyb8d6soh92zknwmi5ej1q2',
    'Authorization': 'Bearer cfabdegwdoklmawdzdo98xt2fo512y'
  }
};
request(options, function (error, response) { 
  if (error) throw new Error(error);
  console.log(response.body);
});