首先...我想通过oAuth将任何Instagram用户的身份验证集成到我的应用中。
在阅读指南https://developers.facebook.com/docs/instagram-basic-display-api/getting-started之后,我将自己添加到了Instagram测试用户中,然后就没有任何问题可以获取令牌,user_id并在我的应用程序中执行一些操作。但是,如果没有我的Instagram测试用户的任何Instagram用户都可以执行此操作,则我会收到OAuthException并显示400状态和error_message:oauth / access_token方法上的“无效范围:[]”
例如,分步操作:
获取Instagram授权表,输入用户名,密码https://api.instagram.com/oauth/authorize?app_id= {app-id}&redirect_uri = {redirect-uri}&scope = user_profile&response_type = code&state = {state}
然后,我想将代码交换为令牌。通过数据app_id = {app-id}&app_secret = {app_secret}&grant_type = authorization_code&redirect_uri = {redirect_uri}&code = {code}发送POST请求https://api.instagram.com/oauth/access_token,参数“ code”从步骤1获得。
现在完成步骤2之后,我现在有了JSON响应的令牌和user_id。
因此,如果我由Instagram测试用户执行,则没有任何异常,但是,如果我可以由其他Instagram用户执行,请在步骤1中输入其他用户名和密码,我将获得OAuthException
PS。我以为我的Facebook应用程序上的API Instagram Basic Display产品可能没有任何能力开发人员主持。我发送了声明,但遭到拒绝:“ Instagram个人资料权限不应该用于对您应用中的新用户进行身份验证”。所以,我做错了什么?
UPD。在第1步中,如果我可以通过其他Instagram用户登录独特的用户名和密码,则我在第2步中未收到“代码”-必需的参数。
答案 0 :(得分:2)
如果您的应用程序仍处于开发模式,则必须在“我的应用程序”>“角色”>“ Instagram测试人员”中添加Instagram用户。那些Instagram用户必须接受测试人员邀请。