почему мое приложение Facebook продолжает обновляться после отправки приглашений? - PullRequest
0 голосов
/ 14 сентября 2011

Я использую этот код для приглашения друзей в мое приложение на Facebook

<?php 

     $app_id = "12165444444444444";

     $canvas_page = "http://www.domain.net/facebook/app/";

     $message = "Would you like to join me in this great app?";

     $requests_url = "https://www.facebook.com/dialog/apprequests?app_id=" 
            . $app_id . "&redirect_uri=" . urlencode($canvas_page)
            . "&message=" . $message;

     if (empty($_REQUEST["request_ids"])) {
        echo("<script> top.location.href='" . $requests_url . "'</script>");
     } else {
        echo "Request Ids: ";
        print_r($_REQUEST["request_ids"]);
     }

?>

, но после отправки приглашений страница продолжает обновляться в бесконечном цикле

что с этим не так?

1 Ответ

1 голос
/ 14 сентября 2011

Поскольку параметр request_ids будет добавлен к URL-адресу только в том случае, если пользователь только что принял запрос приложения, произойдет следующее:

  1. Пользователь заходит на страницу, а затем перенаправляется в диалоговое окно запроса ($requests_url).
  2. Пользователь либо приглашает друзей, либо отменяет диалог. Они перенаправляются обратно на страницу холста вашего приложения ($canvas_page).
  3. Поскольку $canvas_page не содержит параметр request_ids, пользователь перенаправляется в диалоговое окно запроса (см. # 1).

Без тестирования я подозреваю, что, поскольку диалог запросов только что был создан (и закрыт), Facebook автоматически перенаправляет на redirect_uri, вызывая бесконечные перенаправления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...