Я могу отправить запрос приложения с помощью диалогового окна запроса 50 друзьям пользователя с изменением поля to=
но я хочу отправить запросы всем друзьям пользователя, например, в этом примере. Приложение: Пригласите кнопку своего друга для страниц
Это приложение приглашает пользователей первых 50 друзей, чем снова приглашает пользователей следующих 50 друзей и т. Д.
В моем коде я пересылаю пользователей по этому URL-адресу с помощью PHP
https://www.facebook.com/dialog/apprequests?app_id=443468799026324 &to=" . $friend_ids . " &max_recipients=50&filters=app_non_users &redirect_uri=" . urlencode($canvas_page2) . " &message=" . $message;
Оффициальное руководство Facebook для запроса диалога
Как я исхожу отсюда?
Вы можете сделать это следующим образом: сначала вы устанавливаете 50 идентификаторов друзей в параметр и сохраняете оставшийся идентификатор друзей в cookie сейчас, когда вы отправляете запрос, затем перенаправляет его на URL-адрес вашего сайта, где вы можете повторить выше step.ie отправить 50 запросов друзей и сохранить оставшиеся в печенье.
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); }
с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); }
с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); }