首先......我想通过oAuth为任何Instagram用户在我的应用程序中集成身份验证。
阅读指南https://developers.facebook.com/docs/instagram-basic-display-api/getting-started 后,我将自己添加到 Instagram 测试用户,然后没有任何问题获取令牌,user_id 并执行一些操作进入我的应用程序。但是,如果我可以在没有我的 Instagram 测试用户的情况下由任何 Instagram 用户执行此操作,我会在 oauth/access_token 方法上收到带有 400 状态和 error_message: "Invalid scope: []" 的 OAuthException
例如,一步一步:
获取 Instagram 授权表,写入用户名、密码https://api.instagram.com/oauth/authorize?app_id= {app-id}&redirect_uri={redirect-uri}&scope=user_profile&response_type=code&state={state}
然后我想用代码交换令牌。发送 POST 请求https://api.instagram.com/oauth/access_token通过数据 app_id={app-id}&app_secret={app_secret}&grant_type=authorization_code&redirect_uri={redirect_uri}&code={code} 参数“code”从步骤 1 获取.
现在,在完成第 2 步后,我通过 JSON 响应获得了令牌和 user_id。
因此,如果我由我的 Instagram 测试用户执行,我没有任何异常,但是如果我可以由另一个 Instagram 用户执行,请在步骤 1 中输入其他用户名和密码,我将收到 OAuthException
附注。我认为我的 Facebook 应用程序上的 API Instagram Basic Display 产品可能没有由任何有能力的开发人员主持。我发送了声明,但收到了拒绝:“不应使用 Instagram 个人资料权限对您的应用中的新用户进行身份验证”。那么,我做错了什么?
更新。在第 1 步中,如果我可以让另一个 Instagram 用户登录独特的用户名和密码,我将不会收到“代码”——第 2 步中的必要参数。