【问题标题】:OAuthException error_message: "Invalid scope: []" What am I doing wrong?OAuthException error_message:“无效范围:[]”我做错了什么?
【发布时间】:2020-02-14 00:28:44
【问题描述】:

首先...我想通过 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

例如,一步一步:

  1. 获取 Instagram 授权表,填写用户名、密码https://api.instagram.com/oauth/authorize?app_id={app-id}&redirect_uri={redirect-uri}&scope=user_profile&response_type=code&state={state}

  2. 然后我想用代码交换令牌。通过数据 app_id={app-id}&app_secret={app_secret}&grant_type=authorization_code&redirect_uri={redirect_uri}&code={code} 参数“code”从步骤 1 发送 POST 请求 https://api.instagram.com/oauth/access_token

  3. 现在我在完成第 2 步后通过 JSON 响应获得了令牌和 user_id。

所以,如果我由我的 Instagram 测试用户执行,我没有任何例外,但如果我可以由另一个 Instagram 用户执行,在第 1 步写下其他用户名和密码,我会得到 OAuthException

PS。我认为我的 Facebook 应用程序上的 API Instagram Basic Display 产品可能没有受到任何有能力的开发人员的审核。我发送了声明,但遭到拒绝:“Instagram 个人资料权限不应用于验证您应用中的新用户”。那么,我做错了什么?

UPD。在第 1 步,如果我可以让另一个 Instagram 用户登录独特的用户名、密码,我没有收到“代码” - 第 2 步的必要参数。

【问题讨论】:

  • 您需要提交您的应用以供审核,然后才能向在应用中没有角色的用户请求这些权限 - developers.facebook.com/docs/instagram-basic-display-api/…
  • 如果您已经尝试过,并且作为回应,他们告诉您,“Instagram 个人资料权限不应用于在您的应用中验证新用户” - 那么,您可能需要改变你的概念。显然他们不希望您使用此 API 在您的应用中创建任何新帐户,而是希望您将现有的用户帐户与他们的 IG 个人资料相关联。

标签: facebook-graph-api oauth instagram-api instagram-graph-api


【解决方案1】:

如果您的应用仍处于开发模式,那么您必须在我的应用 > 角色 > Instagram 测试人员中添加 Instagram 用户。而那些 Instagram 用户必须接受测试员邀请。

【讨论】:

  • 我已经这样做了,但现在它抛出了 invalid_redirect_uri 异常@Nobody
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-07-26
  • 2022-07-31
  • 2020-10-19
  • 1970-01-01
  • 1970-01-01
  • 2019-03-13
  • 1970-01-01
相关资源
最近更新 更多