api - Instagram 基本 API - 授权问题
问题描述
我正在尝试使用 Insatgram Basic Display API 来获取有关特定 Instagram 帖子的一些信息。我正在浏览 Facebook API 文档,但有些不一致之处我似乎无法找到解决方案。我的目标是创建一个可以在我的网站上使用的私人应用程序,它将显示有关任何给定 Instagram 帖子的一些信息(不仅来自我的帐户)。
我已经创建了 FB 应用程序并使用以下网址在 Instagram 上对其进行授权:
https://api.instagram.com/oauth/authorize?client_id=CLIENT_ID&redirect_uri=REDIRECT_URL&scope=user_profile,user_media&response_type=code
这会将我重定向到通常的 Instagram 权限窗口,我接受并被重定向回此 URL:
https://REDIRECT_URL?opauth=CODE#_
从现在开始有两个问题:
1. Facebook 文档声明返回的 url 参数应该是code
,而不是opauth
:
https://developers.facebook.com/docs/instagram-basic-display-api/guides/getting-access-tokens-and-permissions
opauth
当我在以下 CURL 请求中使用 value 时,我得到Invalid Authorization Code
错误作为回报:
curl -X POST https://api.instagram.com/oauth/access_token -F "client_id=CLIENT_ID" -F "client_secret=CLIENT_SECRET" -F "grant_type=authorization_code" -F "redirect_uri=REDIRECT_URL" -F "code=OPAUTH_VALUE"
我已经仔细检查了请求中的每个值,它们似乎是正确的。为了确定,我经历了几次授权过程,但无论如何都无法获得访问令牌。
解决方案
找到了。该opauth
参数在某种程度上是使用 Opauth 框架的 WordPress 主题的结果。来自 Instagram 的重定向 url 将code
参数值替换为opauth
具有其自身值的新参数。
使用不同的主题允许我code
从重定向 url 中获取正确的参数并获取访问令牌。
推荐阅读
- python - 检查 discord.py 中的参数数量
- java - Jave HttpClient - JSON 内容未解析 -
- javascript - svg 脚本仅在刷新后触发
- c# - 将服务安装程序添加到 Worker 服务
- webpack - MongoDB Realm 函数应该如何共享 JS 代码?
- android - NFC 标签意图过滤
- python - Django在数据库中动态创建表
- fluent-ui - Fluent UI React - 如何使用 Fluent ThemeProvider 应用全局组件样式
- cassandra - 查询很慢 - 结果很大
- c# - 右移运算符在标志枚举中不起作用