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 docs,client-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);
});
我有一项任务是从 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 docs,client-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);
});