如何使用Facebook的PHP sdk显示好友选择器对话框?

我想在发布到朋友墙上之前显示“选择朋友”对话框,如下所示:

我不确定PHP SDK是否可行,我在Fb文档中没有找到任何有关它的信息.

我还可以使用一种Facebook URL,例如:

$link=https://www.facebook.com/dialog/feed?app_id=<your appid>&redirect_uri=<your redirecting link>&link=<link u are posting>&message=<message>.&picture=<picture URL you want to show>&caption=<title>&description=<description>&name=<title>

(这是用来发布到我们自己的墙上的)

更新:

选择选定的朋友uid之后,我想将它们添加到Graph API链接,然后发布到他们的墙.

if (isset($_GET['request_ids'])) {
    $i = 0;
    $n = count(request_ids);
    while($n!=$i){
            $link = ($link + "&to=" + $request_ids[$i]);
        $i = $i +1;
    }
echo "<script language=javascript>parent.location=''</script>";
}

我的php代码有问题吗?

任何帮助,将不胜感激.谢谢.

解决方法:

这是文档:

> https://developers.facebook.com/docs/reference/dialogs/
> https://developers.facebook.com/docs/reference/dialogs/requests/

您可以使用JavaScript SDK或Graph API来做到这一点.

要使用图表API,您可以构建如下网址:

https://www.facebook.com/dialog/apprequests
  ?app_id=<your-app-id>
  &redirect_uri=http://www.example.com/response/
  &message=Your%20message%20here
  &display=popup

通过为“显示”指定不同的值,您可以选择如何显示选择器.可以是页面,弹出窗口,iframe,触摸或wap.

当用户单击“发送请求”按钮时,将添加带有shome的重定向到“ redirect_uri”(我无法找到get参数的确切名称,但很容易找出来).

更新:

用户单击“发送请求”后,他将被重定向到:

<redirect_uri>?request_ids[0]=XXXX&request_ids[1]=YYYY&request_ids[2]=ZZZZ#_=_

因此,在PHP中,您将在$_GET [‘request_ids’]中找到所选朋友的ID列表.您可以通过Graph API使用该列表在朋友墙上发布内容.

旁注:必须与您在应用程序配置页面中指定的站点URL具有相同的域.

更新:

PHP代码的改进:

if (isset($_GET['request_ids'])) {
    for ($i=0; $i<count(request_ids); $i++){
        $link = ($link + "&to=" + $request_ids[$i]);
    }
    echo "<script language=javascript>parent.location=''</script>";
}

然后,$link里面是什么?
要发布在墙上,您应该直接从redirect_uri中指定的脚本中使用适当的Graph API请求.

上一篇:如何使用java和eclipse创建Facebook应用程序


下一篇:javascript-从约2周开始,将iframe添加到Facebook不再起作用