0

我正在尝试使用 PHP SDK 创建一个 Facebook Native 应用程序,这样我就可以不时地从 cron 服务自动将链接和事件发布到我拥有的页面。


我获得了应用访问令牌,并为该应用提供了所有必需的权限:publish_stream、manage_pages 和 create_event。

使用 Graph API,我可以通过简单的调用发布到我的用户个人资料页面:

$facebook->api( "/" . USER_ID . "/feed", 'post', $tmp_fields );

但我不能发布到类似的页面:

$facebook->api( "/" . PAGE_ID . "/feed", 'post', $tmp_fields );

此外,我无法获得页面凭据,/USER_ID/accounts因为它返回:

{
   "error": {
      "message": "(#15) This method is not supported for native apps",
      "type": "OAuthException",
      "code": 15
   }
}

也不能访问/PAGE_ID/?fields=access_token,因为它只返回页面的 id 字段。


那么,将独立应用程序的用户页面发布到用户页面的正确方法是什么,例如可以每周左右从 cron 运行。如何仅从本机应用程序中的应用程序访问令牌获取页面访问令牌?

4

1 回答 1

0

Graph API 的某些方法不适用于桌面或移动(“本机”)应用程序。我发现的一个相关错误报告表明,这是因为桌面应用程序必须将其应用程序机密存储在其应用程序中(这可能导致它被反编译并用于进行恶意 API 调用)。

如果此 Facebook 应用程序供您个人使用,或者您没有在其中嵌入您的 App Secret,您可以通过在应用程序设置的“高级”部分将 Facebook 应用程序的类型更改为 Web 应用程序来绕过此限制:

于 2013-03-01T11:42:26.007 回答