【问题标题】:Facebook PHP SDK - Remove/expire permissions and app from a user's profileFacebook PHP SDK - 从用户的个人资料中删除/过期权限和应用程序
【发布时间】:2011-10-24 06:47:12
【问题描述】:

我目前正在通过 PHP SDK 将 Facebook 集成添加到我的网站中。我正在请求并计划使用 offline_access 权限,因此我将 access_token 存储在数据库中。但是,我为用户提供了在添加 Facebook 后删除与 Facebook 的集成的选项,然后从数据库中删除此 access_token。这就是问题所在:

他们第一次添加集成时,我的应用会正确重定向到 Facebook 并请求权限等。但是,如果他们删除集成然后重新添加它,它不会再次请求权限(这是有道理的,因为这些权限在技术上仍然授予该用户个人资料上的我的应用程序,除非他们进入 Facebook 并手动删除它们)。

我的问题是,是否有办法告诉 Facebook 从该用户的 Facebook 个人资料中删除我的应用及其权限,这样如果他们重新添加集成,就会再次提示他们接受权限。

我猜可能类似于 $facebook->expireAllAppPermissions()。

【问题讨论】:

    标签: php facebook facebook-graph-api facebook-php-sdk access-token


    【解决方案1】:

    这是因为您只是从数据库中删除访问令牌,它不会从用户配置文件中删除您的应用程序。用户仍然通过您的应用程序进行身份验证。他必须手动删除该应用程序。

    【讨论】:

    • 是的,我意识到为什么 Facebook 目前没有取消权限是有道理的。我的问题是我是否可以通过 API 删除这些权限。
    • 不,无法取消对应用的授权。用户必须手动删除它。
    • 无法使用 GRAPH API 执行此操作,但您可以使用旧的 REST API auth.revokeAuthorization 执行此操作
    【解决方案2】:

    您可以向 /PROFILE_ID/permissions 发出 HTTP DELETE 请求,以撤销对应用的授权。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-05-13
      • 2016-06-21
      • 2015-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多