我有一个网页,我只想显示公开的Facebook页面的最新状态(https://www.facebook.com/jaycorvs)。
我创建了一个应用程序,获得了API密钥和密钥等...使用PHP SDK我遇到了以下问题:
// Facebook
require_once('facebook-php-sdk/facebook.php');
$facebook = new Facebook(array(
'appId' => '5799359587XXXXX',
'secret' => 'd466917a5XXXXXXXXXXXXX9dff4d77a79',
));
$status = $facebook->api("/jaycorvs/statuses?access_token=".$facebook->getAccessToken() );
// Error:
Fatal error: Uncaught OAuthException: (#100) Requires user session thrown in /vhosts/asdfasdfa.com/public/facebook-php-sdk/base_facebook.php on line 1264
那么,这是否意味着,只是为了在网页上显示简单,公开的状态更新,我必须让访问者通过Facebook应用程序权限流程(“此页面需要访问您的朋友,Feed,等“)????
我正在查看一年前我做过的一个旧项目,但事实并非如此,因为该项目的代码非常相似。 Facebook最近有变化吗?
另外,为什么我可以访问该页面的完整Feed(http://facebook.com/jaycorvs/feed),而不仅仅是使用此应用权限访问权限的雕像?这根本没有意义。
我错过了一些明显的东西吗?或者Facebook真的需要这些类型的应用程序权限才能简单地查看公共状态吗?
答案 0 :(得分:2)
似乎这是一个错误,已于2013年2月报道过:
https://developers.facebook.com/bugs/480742545315442
但他们已经给予了这个低优先级,并且还没有给予更多更新。
答案 1 :(得分:0)
我还有另外一个关于它的错误,但与此同时,还有一些解决方法:
首先,解析/ feed,你可能知道,这是获取你想要的数据的一种方法......我曾经这样做过......但是随着我的数据集大小的增加,它变得过于密集。 ..
另一种选择?使用/发布。
/ posts ...我认为类似于/ status,主要区别在于ID的格式... / posts查询中的ID通常是pagename_nodeid
就像19292868552_10150189643478553 ...你可以拼凑它并重新组合以获得帖子......
如果您搜索10150189643478553(假设),您将获得
{
"error": {
"message": "(#100) Requires user session",
"type": "OAuthException",
"code": 100
}
}
但是,添加pageid作为节点ID的前缀可以绕过用户会话问题......