使用 php 向 facebook 的用户墙公开流?

Posted

技术标签:

【中文标题】使用 php 向 facebook 的用户墙公开流?【英文标题】:Public stream to facebook's user wall with php? 【发布时间】:2010-12-23 22:00:41 【问题描述】:

我用 php api 构建了一个 facebook 应用程序,一切正常,只是当我需要在用户的墙上公开一条消息时出现问题。

下面是我的代码

$appapikey = "xxxxxx";
$appsecret = "xxxxxx";
$facebook = new Facebook($appapikey, $appsecret);
$fb_user = $facebook->require_login();
if (!$facebook->api_client->users_hasAppPermission("publish_stream, status_update"))
    echo '<fb:prompt-permission perms="publish_stream, status_update">Click here to grant permissions to update your status and publish to your stream.</fb:prompt-permission>';

    try 
        $facebook->api_client->stream_publish($message);
     catch (Exception $e) 
        echo "Public error".$e->getMessage();
    

我已允许 publish_stream 的权限,但仍然出现错误

Uncaught exception 'FacebookRestClientException' with message 'Unauthorized source IP address (ip was: 69.89.31.xxx)'
Stack trace:
#0 /home/flexvnne/public_html/facebook/facebook/client/facebookapi_php5_restlib.php(345): FacebookRestClient->call_method('facebook.users....', Array)
#1 /home/flexvnne/public_html/facebook/index.php(36): FacebookRestClient->users_getInfo('625757897', 'username')
#2 main
  thrown in /home/flexvnne/public_html/facebook/facebook/client/facebookapi_php5_restlib.php on line 1314
[16-Oct-2009 01:30:53] PHP Fatal error:  Uncaught exception 'FacebookRestClientException' with message 'Unauthorized source IP address (ip was: 69.89.31.xxx)' in /home/flexvnne/public_html/facebook/facebook/client/facebookapi_php5_restlib.php:1314

任何已知的方法来解决这个问题?

【问题讨论】:

【参考方案1】:

看起来您的 users_getInfo() 调用在这里失败了,而不是流发布。 我的猜测是在您的 facebook 开发者应用程序设置中检查您的白名单/黑名单——您的 IP 可能会受到限制。

【讨论】:

以上是关于使用 php 向 facebook 的用户墙公开流?的主要内容,如果未能解决你的问题,请参考以下文章

从 Facebook 活动墙获取照片(包括非朋友的公开照片)

高级 PHP 图像共享。从数据库到 Facebook 墙?

未登录时是不是可以获取公共 Facebook 墙供稿?

如何将对象发布到 facebook 用户墙?

如何从 android 应用程序发布到用户的 facebook 墙

UIWebview 和 facebook 墙