【问题标题】:facebook deeplink with app link host带有应用链接主机的 facebook 深层链接
【发布时间】:2014-05-15 00:46:17
【问题描述】:

根据 facebook 开发网站。 https://developers.facebook.com/docs/graph-api/reference/v2.0/app/app_link_hosts

在发布部分 我尝试使用 Android SDK 但收到此错误
{"error":{"message":"(#200) 权限错误","type":"OAuthException","code":200}}

我尝试使用 Curl 选项,但得到了同样的错误
{"error":{"message":"(#200) 权限错误","type":"OAuthException","code":200}}

好的,所以我仔细检查我的权限:[public_profile, rsvp_event, publish_actions] 我有正确的权限它是如此简单。除非我错过了什么。

编辑 还要检查 access_token 是否传入。

如果有人有解决方案,请分享。

【问题讨论】:

  • 您确定您使用的访问令牌具有这些权限?
  • 是的,我设置了 access_token。但仍然无法正常工作。将编辑问题以明确表示感谢。
  • 您如何检查您是否拥有权限?确保检查访问令牌
  • Session.getActiveSession().getPermission() 显示当前权限。并且在会话对象中存在 access_token。我也尝试使用 Request 对象中的参数传递它。但还是不行。
  • 我建议在developers.facebook.com/debug 中调试访问令牌,然后尝试在图形资源管理器developers.facebook.com/tools/explorer 中发出请求,以确保您在那里得到相同的错误。如果您仍然收到权限错误,我会在developers.facebook.com/bugs 提交一个错误,并提供精确的重现步骤

标签: android facebook facebook-graph-api deep-linking


【解决方案1】:

我遇到了和你一样的问题。事实证明,有各种类型的访问令牌。 https://developers.facebook.com/docs/facebook-login/access-tokens,

  • 用户访问令牌 – 用户令牌是最常用的令牌类型。每当应用程序调用 API 以代表他们读取、修改或写入特定人的 Facebook 数据时,都需要这种访问令牌。用户访问令牌通常是通过登录对话框获取的,并且需要一个人允许您的应用获取。

  • App Access Token - 需要这种访问令牌来修改和读取应用程序设置。它还可用于发布 Open Graph 操作。它是使用应用程序和 Facebook 之间预先商定的秘密生成的,然后在更改应用程序范围设置的调用期间使用。您通过服务器到服务器调用获取应用访问令牌。

  • 页面访问令牌 – 这些访问令牌类似于用户访问令牌,不同之处在于它们向 API 提供读取、写入或修改属于 Facebook 页面的数据的权限。要获取页面访问令牌,您需要首先获取用户访问令牌并请求 manage_pages 权限。获得用户访问令牌后,您就可以通过 Graph API 获得页面访问令牌。

  • 客户端令牌 - 客户端令牌是您可以嵌入到本机移动二进制文件或桌面应用程序中以识别您的应用程序的标识符。客户端令牌并不意味着是秘密标识符,因为它嵌入在应用程序中。客户端令牌用于访问应用级 API,但仅是非常有限的子集。客户端令牌位于应用程序的仪表板中。由于客户端令牌很少使用,我们不会在本文档中讨论它。相反,它包含在任何使用客户端令牌的 API 文档中。

所以本例中的访问令牌指的是App Access Token。您可以使用 API Explorer 获取一个:

请注意,您还需要成为 Facebook 应用的管理员才能获得应用访问令牌,否则该按钮将显示为灰色,如上面的屏幕截图所示。

【讨论】:

    猜你喜欢
    • 2012-01-06
    • 1970-01-01
    • 2012-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多