沙箱中的OAuthPermissionsException Instagram API

时间:2015-11-23 03:55:17

标签: instagram-api

我很感激我在一段时间内试图解决的问题上的一些意见/方向。

我正在尝试使用Instagram API访问与标签相关的数据(让我们称之为“X”)。我尝试直接从Python和浏览器运行它并得到了同样的错误:

{u'meta': {u'code': 400, u'error_type':u'OAuthPermissionsException',
u'error_message': u'This request requires scope=public_content, but this
access token is not authorized with this scope. The user must re-authorize
your application with scope=public_content to be granted this permissions.'}}

这是我编写的简单Python代码,以便首先使其工作:

import requests

access_token = 'zzzzzzzzzzzzz'

parameters = {"q": "X",
              "scope": "public_content",
              "access_token": "zzzzzzzzzzzzz"}

response = requests.get("https://api.instagram.com/v1/tags/search",
                        params=parameters)

insta_posts = response.json()

我是否使用了正确的沙盒网址?我阅读了Instagram API文档,Sandbox中的应用程序不需要任何类型的范围更改批准。

此外,该应用程序仅被授权使用沙盒:

Screen Capture of Application Defined in Instagram API

任何方向都会受到高度赞赏。

谢谢,

马丁

更新:弄清楚发生了什么。首先需要更改应用程序的授权范围。我就这样做了:

只需要为大写

的单词插入数据

完成后,该应用程序将获得该范围的授权。

由于我已有访问令牌,因此我无需执行第2步和第3步。

希望这有帮助。

马丁

1 个答案:

答案 0 :(得分:34)

这是一个很好的例子:

https://www.instagram.com/oauth/authorize?client_id=b23670e258o0fmk334jfu287c9f9953&redirect_uri=http://127.0.0.1:5000&response_type=code&scope=basic+public_content+follower_list+comments+relationships+likes

只需在网址末尾添加范围参数:

&scope=basic+public_content+follower_list+comments+relationships+likes