2011-03-22 3 views
3

Я сделал приложение, это приложение находится на вкладке fanpage. Но когда кто-то приглашает своих друзей, приглашение перенаправляется на страницу приложения, а не на вкладку fanpage.Перенаправить заявку на страницу, а не на страницу приложения

я использую это:

function invite(){ 
FB.ui({ 
    method: 'apprequests', 
    message: 'message', 
    data: 'tracking information for the user' 
}, 
    function(response) { 
     location.href="CANVAS_URL?req="+response.request_ids; 
     } 
); 

В моей конфигурации приложения у меня есть:

URL холста: URL на моем сайте

Tab URL: URL на моем сайте

Как может я делаю?

ответ

3

Если вы используете PHP, вы можете использовать переменные $ _SESSION.

<?php 
session_start(); 

$app_token = '?'.file_get_contents('https://graph.facebook.com/oauth/access_token?client_id='.FACEBOOK_APP_ID.'&client_secret='.FACEBOOK_SECRET.'&grant_type=client_credentials'); 

if (isset($_GET['request_ids']) && !empty($_GET['request_ids'])) { 
    $_SESSION['request_ids'] = $_GET['request_ids']; 
      header('Location: ' . FACEBOOK_PAGE_TAB); 
} 

if (isset($_SESSION['request_ids']) && !empty($_SESSION['request_ids'])) { 
    if (strpos($_SESSION['request_ids'], ',') !== false) { 
     $request_ids = explode(',', $_SESSION['request_ids']); 
     $_SESSION['request_ids'] = $request_ids[0]; 
     var_dump($_SESSION['request_ids']); 
    } 
    $request = json_decode(file_get_contents('https://graph.facebook.com/'.$_SESSION['request_ids'].$app_token)); 
    var_dump($request); 
} 
?> 

$ _SESSIONs, кажется, лучшее решение, когда вы делаете прыжок пользователя между apps.facebook.com/yourapp/ и facebook.com/yourpage/?sk=app_123456 и наоборот.

Cheers,

+0

Спасибо @Koen за заголовок() swap, лучшая рекомендация. – Chauncey

2

У меня была аналогичная проблема. Это то, что я сделал:

на странице PHP, которую вы определили как холст URL ...

if(isset($_GET["request_ids"])) 
{ 
    $page_id = 123; 
    $app_id = 321; 
    $url = "http://www.facebook.com/pages/FAN_PAGE/$page_id?sk=app_$app_id"; 
    ?> 
    <script type="text/javascript"> 
     top.location.href = "<?=$url?>"; 
    </script>   
    <?    
    exit; 
} 

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

1

Перейдите на вкладку приложения вашего fanpage, скопируйте этот URL-адрес и вставьте в поле «URL-адрес закладки» в настройках вашего приложения.

Люди, ответившие на apprequests, будут затем направлены на вашу вкладку fanpage.

+0

Сэм ... где этот параметр сейчас? – Enrique

+1

Это больше не существует – Igy

Смежные вопросы