使用 SLRequest 获取 facebook 页面访问令牌

Get facebook Page Access Token using SLRequest

如何在 iOS 上使用 SLRequest(使用图形 api 调用)获取 Facebook 页面访问令牌。

我有一个应用程序可以 post 将照片发送到特定的 Facebook 页面。我已经通过 php 完成了它的工作,所以我知道获得此类权限没有问题。但我现在需要完全用原生 iOS 完成。

在 iOS 中,我已获得 post 对所述页面所有者提要的许可,但这不是我想要的。当我使用应用程序令牌 post 到一个页面(这是 public 对页上的相册)时,它给了我 'permission denied errors'

我使用

通过 php 解决了这个问题

$request = new FacebookRequest($session, 'GET', '/me/accounts?fields=name,access_token,perms');

只需要使用 SLRequest 为 iOS 获取相同的内容,因为我正在使用 iOS 社交框架

感谢您的帮助

您不应使用应用程序访问令牌从设备调用图形API。那是因为 App Access Token 应该被视为密码;将其存储在设备上是不安全的,因为可以使用特殊软件提取令牌。

您可以在此处阅读更多相关信息:https://developers.facebook.com/docs/facebook-login/access-tokens#apptokens

...Again, for security, app access token should never be hard-coded into client-side code...

您可以通过两种方式处理您的情况:

  1. 只需使用用户访问令牌进行调用。如果您拥有用户的正确权限,您可以 post 作为该相册的页面。
  2. 将数据发送到您自己的服务器并使用 App Access Token 进行调用,从那里到 Graph API。

我建议您使用方法 1。使用用户令牌而不是 App 令牌也可以更好地限制速率。