gpt4 book ai didi

node.js - 无法使用 Node 中的请求模块获取 Instagram 访问 token

转载 作者:太空宇宙 更新时间:2023-11-04 02:13:33 24 4
gpt4 key购买 nike

我正在使用请求和 Instagram api 构建一个简单的 Node 应用程序,并尝试在 oauth 过程的最后一步中调用 instagram 访问 token 。由于某种原因,Instagam 的 api 响应 400,表示我的 client_id 未在我的请求正文中明确指定时指定。这是 Instagram 的 oauth 流程的链接:https://www.instagram.com/developer/authentication/

这是我的请求代码:

var options = {
url: "https://api.instagram.com/oauth/access_token",
method: 'POST',
oauth: {
"client_id": process.env.CLIENT_ID,
"client_secret": process.env.CLIENT_SECRET
},
json: {
"client_id": process.env.CLIENT_ID,
"client_secret": process.env.CLIENT_SECRET,
"grant_type" : "authorization_code",
"code" : response.req.query.code,
"redirect_uri" : 'http://127.0.0.1:5000/redirect'
}
};

request(options, function ( error, response ) {
if(error) { console.log(error); }
else { console.log(JSON.stringify(response)); }
});

这是回应:

{"statusCode":400,"body":{"code":400,"error_type":"OAuthException","error_messag
e":"You must provide a client_id"},"headers":{"content-language":"en","expires":
"Sat, 01 Jan 2000 00:00:00 GMT","vary":"Cookie, Accept-Language","pragma":"no-ca
che","cache-control":"private, no-cache, no-store, must-revalidate","date":"Wed,
27 Apr 2016 05:37:03 GMT","content-type":"application/json","set-cookie":["csrf
token=456dc5df05f5b0aad286723004e395fe; expires=Wed, 26-Apr-2017 05:37:03 GMT; M
ax-Age=31449600; Path=/","mid=VyBP_wAEAAGhT9YCRDGVBM6tksC7; expires=Tue, 22-Apr-
2036 05:37:03 GMT; Max-Age=630720000; Path=/"],"connection":"close","content-len
gth":"94"},"request":{"uri":{"protocol":"https:","slashes":true,"auth":null,"hos
t":"api.instagram.com","port":443,"hostname":"api.instagram.com","hash":null,"se
arch":null,"query":null,"pathname":"/oauth/access_token","path":"/oauth/access_t
oken","href":"https://api.instagram.com/oauth/access_token"},"method":"POST","he
aders":{"accept":"application/json","content- type":"application/json","content-l
ength":223,"Authorization":"OAuth oauth_client_id=\"[THE ACUAL RESPONSE DISPLAYS ID HERE]\",oauth_client_secret=\"[THE ACTUAL RESPONSE DISPLYS SECRET HERE]\",oauth_nonce=\"cc
173578667148d1bdf341926b9e2cd0\",oauth_signature_method=\"HMAC-SHA1\",oauth_time
stamp=\"1461735413\",oauth_version=\"1.0\",oauth_signature=\"zeQxrYVNSsveztczszW
FiY3jGz8%3D\""}}}

最佳答案

我认为环境变量 process.env.CLIENT_ID 没有值。尝试使用硬编码字符串而不是 process.env.CLIENT_ID 和 process.env.CLIENT_SECRET

关于node.js - 无法使用 Node 中的请求模块获取 Instagram 访问 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36881460/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com