Php Facebook stream.publish的先决条件是什么?

Php Facebook stream.publish的先决条件是什么?,php,api,facebook,Php,Api,Facebook,我想知道是否有人能帮我解决stream.publish的测试问题。我以为我的作品都是对的。代码如下: <?php require_once 'facebook.php'; $appapikey = 'xxxxxxx'; $appsecret = 'xxxxxxx'; $facebook = new Facebook($appapikey, $appsecret); $user_id = $facebook->require_login(); $message = "Will th

我想知道是否有人能帮我解决stream.publish的测试问题。我以为我的作品都是对的。代码如下:

<?php
require_once 'facebook.php';
$appapikey = 'xxxxxxx';
$appsecret = 'xxxxxxx';
$facebook = new Facebook($appapikey, $appsecret);
$user_id = $facebook->require_login();


$message = "Will this status show up and allow me to dominate the world?!";
$uid = $user_id;
echo $uid;
$facebook->api_client->stream_publish($message,$uid);

删除
$uid
变量,因为发布不需要它。有关更多信息,请参阅此

$stream_post_id = $facebook->api_client->stream_publish($message); 
//returns $post_id to use if you want to revert the creation. 
stream_publish()接受两个以上的参数:

stream_publish($message, $attachment = null, 
               $action_links = null, $target_id = null, 
               $uid = null)
其中,$target_id是您发布到的用户或页面,和$uid是进行发布的用户或页面,默认为您的会话id。要完全明确这一点,我认为您需要尝试

<?php
require_once 'facebook.php';
$appapikey = 'xxxxxxx';
$appsecret = 'xxxxxxx';
$facebook = new Facebook($appapikey, $appsecret);
$user_id = $facebook->require_login();

$message = "Will this status show up and allow me to dominate the world?!";

echo $user_id;
$facebook->api_client->stream_publish($message,null,null,$user_id,$user_id);

如果您试图将streamPublish与iFrame应用程序一起使用,下面是一个非常棒的分步教程,它不必使用getAppPermissions:


这一款在2011年有效!我也有同样的问题。由于Facebook的变化,大多数的图坦卡门似乎已经过时了。我最终找到了一种行之有效的方法,并在这里写了一篇关于它的博客文章:


还有一个屏幕截图向您显示结果。确保你也看到了关于身份验证的博客文章

在我的脚本中,它如何知道将消息发布到哪个用户的帐户?调用如下$facebook->api\u client->stream\u publish($message,$attachment,$actionlinks);我的问题是,所有参数都列为可选参数,所以我只包含了我认为需要的参数,而没有考虑它们的顺序决定了它们的含义(即使用占位符来回答所有可用参数),非常感谢您在这方面的帮助。
$app_id = 'xxxxxxx'; 
$facebook->api_client->stream_publish($message,null,null,$user_id,$app_id);