我正尝试使用Instagram基本显示API登录。
我正在尝试获取access_token
,并且正在使用axios:
const { code } = queryParams;
const url = `https://instagram.com/oauth/access_token`;
const result = await axios.request({
url,
method: 'POST',
data: {
'client_id': INSTAGRAM_CLIENT_ID,
'client_secret': INSTAGRAM_CLIENT_SECRET,
'grant_type': 'authorization_code',
'redirect_uri': 'https://localhost:3000/auth/instagram/token',
code,
},
});
我遇到400
错误,并显示消息invalid platform app
。发送的所有值都是正确的。
我的redirect_uri
虽然不存在,但是已添加到授权的URL列表中。它不存在,因为我的本地服务器中没有https。
答案 0 :(得分:0)
我有同样的问题。 The official example given by Instagram使用curl使用-F
标签,这意味着他们将数据发布为application/x-www-form-urlencoded
内容类型。
我尝试过的所有其他帖子格式都将被忽略。更改代码以将其发布为表单,它应该可以工作。
答案 1 :(得分:0)
const querystring = require('querystring');
///使用参数const data = { client_id:“ xxxxxxx”, client_secret:“ xxxxxxxxxxx”, grant_type:“授权代码”, redirect_uri:'https://example.com/auth', 代码:“ xxxx”}
//拨打电话 axios.post(“ https://api.instagram.com/oauth/access_token”, querystring.stringify(data)).then(function(response){ console.log(“ OK”,response.data); }).catch(函数(错误){ console.log(错误); });