你可以这样做如下: 首先你设置50个朋友id参数,然后将剩余的朋友ID存储在cookie中,现在当你发送请求时,它会重定向到你的站点的url,你可以重复上面的step.i.e.发送50个朋友请求并存储在Cookie中。
var to="";
for(var j=0 ; j< 50 && j<friends.length ; j++){
if(friends[j].checked == true){
to += friends[j].value;
if(j != friends.length-1 && j != 49){
to += ',';
}
}
}
var redirect_uri=your_site_url+"?button=inviteresponse";
var callbackto="";
for(var i=j;i<friends.length;i++){
callbackto += friends[i].value;
if(i != friends.length-1){
callbackto += ',';
}
}
document.cookie = "param="+callbackto+";path=/";
var url="https://www.facebook.com/dialog/apprequests?app_id="+app_id+"&to="+to+"&message=Checkout apps&redirect_uri="+redirect_uri;
window.open(url,'', 'width=900,height=500,resizable=yes,scrollbars=yes');
case "inviteresponse":
if (empty($_COOKIE['param'])) {
unset($_COOKIE['param']);
echo "<script type='text/javascript'>window.close();</script>";
die();
} else {
$friends = explode(",", $_COOKIE["param"]);
$to = "";
for ($j = 0; $j < 50 && $j < count($friends); $j++) {
$to .= $friends[$j];
if ($j != count($friends) - 1 && $j != 49) {
$to .= ",";
}
}
$redirect_uri = your_site_url+"?button=inviteresponse";
$callbackto = "";
for ($i = $j; $i < count($friends); $i++) {
$callbackto .= $friends[$i];
if ($i != count($friends) - 1) {
$callbackto .= ",";
}
}
unset($_COOKIE['param']);
setcookie("param", $callbackto);
$url = "https://www.facebook.com/dialog/apprequests?app_id=" . APP_ID . "&to=" . $to . "&message=Checkout apps&redirect_uri=" . $redirect_uri;
header("Location: " . $url);
}
听起来像你要求你的用户邀请所有的朋友给你的应用程序...这是对FB政策......让你的用户选择某些朋友,否则请你站在击球请求的风险限制为您的应用程序... – Lix 2012-07-12 07:34:19
@Lix这是没有必要的,如果用户想要他可以 首先他点击邀请按钮,并返回索引页,但如果他再次点击邀请按钮,他会发现新的50个用户 – 2012-07-12 07:36:06
@Lix你能请更多解释如下: “允许您的用户选择某些朋友邀请,否则您将面临达到您的应用程序请求限制的风险。” 这是单身使用者还是所有使用者的限制? – 2012-07-12 07:36:49