我一直在关注 Instagram 的基本指南https://developers.facebook.com/docs/instagram-basic-display-api/guides/getting-access-tokens-and-permissions
我添加了我的个人 Instagram 帐户作为测试人员,并获得了授权代码,但是当我发送获取访问令牌的请求时,这是我的响应:
{
"error_type": "OAuthException",
"code": 400,
"error_message": "Missing required field client_id"
}
这是我在 POSTMAN 中的输入:
任何帮助或可能的提示将不胜感激,提前致谢!
我在这里找到了我自己问题的解决方案无法获取Instagram基本显示API的access_token
当使用 Postman for Instagram 的 API 时,您应该填写 POST 请求的Body下所需的信息,NOTParameters。当在正文中时,只需选择 x-www-form-irlencoded
只是澄清一下,您还必须在代码末尾保留“#_ 才能使其正常工作(与文档所说的相反)
而不是对主体进行编码 - 可以在 python 中使用这种方法。
import urllib3
def make_post_request(url, fields):
http = urllib3.PoolManager()
response = http.request(
'POST',
url,
fields=fields
)
return response.data.decode('utf-8')
url = 'https://api.instagram.com/oauth/access_token'
fields = {
'client_id': '1234',
'client_secret': 'ad09c61ac39488fc446b4bc0f05fddc9',
'grant_type': 'authorization_code',
'redirect_uri': 'https://www.blabla.app/auth/',
'code': '1234'
}
response = make_post_request(url, fields)
print(response)
Instagram 重定向到您的 REDIRECT_URI,代码在查询参数中,但我注意到代码字符串末尾缺少
#_
,该代码字符串出现在允许用户权限后的 Instagram 页面上,将其添加到您检索到的内容中如果缺少,请在末尾添加代码。