Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook图形API发布到好友墙_Facebook_Rest_Facebook Graph Api - Fatal编程技术网

Facebook图形API发布到好友墙

Facebook图形API发布到好友墙,facebook,rest,facebook-graph-api,Facebook,Rest,Facebook Graph Api,是否可以作为当前登录的用户在其他用户的墙上发布消息?我可以发布消息,但似乎是其他用户发送的,而不是我 使用旧API(通过stream.publish方法)是可能的,但我无法使用新API复制该功能 提前谢谢 见 您必须使用from/to参数。是。。可以将其作为提要发布到用户墙上 JsonObject resl=facebookClient.Post(“/me/feed”,参数),作为JsonObject 查看此处的完整代码我使用这一行代码将friendID作为我要发布到的朋友的id发布到朋友的墙上

是否可以作为当前登录的用户在其他用户的墙上发布消息?我可以发布消息,但似乎是其他用户发送的,而不是我

使用旧API(通过stream.publish方法)是可能的,但我无法使用新API复制该功能

提前谢谢


您必须使用from/to参数。

是。。可以将其作为提要发布到用户墙上

JsonObject resl=facebookClient.Post(“/me/feed”,参数),作为JsonObject


查看此处的完整代码

我使用这一行代码将friendID作为我要发布到的朋友的id发布到朋友的墙上 $attachment是带有msg的数组

$result=$facebook->api($friendID./feed/,'post',$attachment)


希望这会有所帮助。

您可以使用他们的JavaScript SDK执行类似操作:

var user_id = "123456789";
var data = {
    name: "title of post",
    caption: "caption of post",
    description: "description of post"
};
var callback = function (response) {};
FB.api("/" + user_id + "/feed", "post", data, callback);
这将向指定了
user\u id
的用户发送一条包含当前登录用户提供的数据的消息

为了允许发布,您需要
publish\u stream
权限,您可以通过调用

FB.login(null,{perms: 'publish_stream'});

一旦您有了一个活动的用户会话/cookie,您可以像这样发布到朋友墙:

Javascript SDK

FB.api('/FRIENDSUSERID/feed', 'post', { message: message }, function(response) {
    if (!response || response.error) {
        alert('Error occured');
    } else {
        alert('Post ID: ' + response.id);
    }
});
将FRIENDSUSERID替换为好友的用户id

PHP SDK 3.1.1

$publishStream = $facebook->api("/$user/feed", 'post', array(
     'message' => "Your Message", 
     'link'    => 'http://example.com',
     'picture' => '',
     'name'    => 'App Name',
     'description'=> 'App description'
));
只需将$user变量替换为好友的用户id即可


我已经编写了一个教程,演示了如何执行此操作,值得一看:

注意,只有当用户是页面管理员时,才能使用页面ID。@nenad询问页面的具体位置?我忘了提到我希望在没有用户交互的情况下执行此操作,旧的RESTAPI可以通过stream.publish方法实现这一点。同样,您不使用FB.ui,而是直接调用url。如果我的回答中给出了链接,请参见。您需要“发布流”权限才能执行此操作。@Rufinus我已经尝试过了,因为它写在您发送的链接上,它将打开一个提示或转发给它。在我们的例子中,我们需要在后台在朋友墙上写东西,而不向用户输出任何内容,就像我们使用旧的RESTAPI.var data={body:“body of the post”,message:“message of the post”}