0

Диалоговое окно приглашения открывается и приглашение также отправляется. Но я не могу перенаправить пользователя на нужную страницу после отправки приглашения с помощью redirect_uri, как указано в документации по документации «Запросы» (https://developers.facebook.com/docs/reference/dialogs/requests/). После отправки приглашения нет перенаправления или чего-либо еще.facebook request_uri не работает

<div id="fb-root"></div> 
    <script src="http://connect.facebook.net/en_US/all.js"></script> 
    <script> 
     FB.init({ 
     appId : 'app_id', 
     }); 
     function sendRequestViaMultiFriendSelector() { 
     FB.ui({method: 'apprequests', 
      message: 'Invite friends!', 
      request_uri: 'https://apps.facebook.com/myappname/invitesent.php', data: '<?php echo $user_id; ?>', exclude_ids: [<?php echo $friends; ?>] 
     }, requestCallback); 
     } 
     function requestCallback(response) { 
     // Handle callback here 
     } 
    </script> 
+0

Что такое request_uri? вы имеете в виду redirect_uri? (Кроме того, это не должно быть необходимо, если вы не открываете полный диалог в диалоговом окне) – Igy

ответ

1

Вам не нужен redirect_uri, если вы используете JS-SDK. Это работа функции обратного вызова, так что в вашем requestCallback():

function requestCallback(response) { 
    // Handle callback here 
    ... 


    // once done, redirect (outside of Facebook page!) 
    top.location.href = 'http://mydomain.com/nextpage/'; 
} 

Или я полагаю location.href = ''; остаться в приложение Facebook кадре.

0

У вас есть обратный URL холста при создании приложения для facebook?

+0

Я определил Canvas Url, который является ссылкой на место размещения приложения. Я не определил URL-адрес обратного вызова де-авторизации, который я предположил, когда пользователь удаляет мое приложение. Я не могу найти, где я должен был определить URL-адрес обратного вызова в настройках приложения –

+0

, когда вы создаете приложение для facebook, там вы увидите ссылку под названием «Приложение на Facebook», там вы можете найти «Canvas url», это URL-адрес, который перенаправляет приложение facebook после входа в facebook с помощью приложения. – SAR

+0

Да «URL холста» определяется, как я сказал ранее. Вот почему приложение работает нормально. –

1

Как вы уже включили Facebook Javascript SDK в вашем приложении и вы прописаны этот код для приглашения друга для вашего приложения в сценарии

FB.ui({ method: 'apprequests', 
     redirect_uri: 'APP URL', 
     message: 'My Message' 
    }); 

Это будет перенаправлять URL App без перенаправления на Facebook холст URL .so это не будет работать, даже если вы используете параметр данных, таких как

FB.ui({ method: 'apprequests', 
    data: 'APP URL', 
    message: 'My Message' 
}); 

Написать этот код на вашей целевой странице App, то есть в index.php в начале кода.

$requestid=$_GET[request_ids];  
if(!empty($requestid)) 
    {  
     echo "<script> window.top.location.href='APP URL'; </script>";     
    } 
Смежные вопросы