Диалоговое окно не перенаправляет после процесса - PullRequest
1 голос
/ 26 декабря 2011

Я занимаюсь разработкой простого приложения для Facebook.Я следил за этой страницей в документации: http://developers.facebook.com/docs/appsonfacebook/tutorial/

В моем приложении я хотел бы призвать пользователей делиться ею, поэтому я попытался создать диалоговое окно подачи в соответствии с этим (первый пример JavaScript): http://developers.facebook.com/docs/reference/dialogs/feed/

Я могу поделиться ссылкой, но ничего не происходит после нажатия поделиться или отменить.Я определил параметр redirect_uri a это тот же URI домена, который определен в настройках приложения.Странно то, что если я нажимаю кнопку закрытия (X), страница в redirect_uri загружается внутри лайтбокса диалогового окна iframe.

Есть идеи, в чем проблема?Долгий поиск в Google не дал результата: /

Ответы [ 2 ]

0 голосов
/ 29 мая 2013

Это тот же самый код, доступный в диалоге на фейсбуке. Я изменил его, чтобы принять требования моего приложения, и лайтбокс открывается, если для отмены используется '#' в качестве redirect_uri, иначе я использую функцию ответа для перемещения document.location на страницу спасибо, надеюсь, это поможет вам решить вашу проблему.

<script src='http://connect.facebook.net/en_US/all.js'></script>
<script> 
  FB.init({appId: "<?=$config['appId'];?>", status: true, cookie: true});

  function postToFeed() {
    // calling the API ...
    var obj = {
      method: 'feed',
      redirect_uri: '#',
      link: 'https://www.facebook.com/MyPageName/app_<?=$config['appId'];?>',
      picture: 'https://www.abc.com/fbapp/img/welcome.jpg',
      to: friendId,// js variable I am fetching from radio button selection
      name: 'App Blah Blah',
      caption: 'your_caption',
      description: 'your_description'
    };

    function callback(response) {
// I commented out message print in div
//          document.getElementById('msg').innerHTML = "Post ID: " + response['post_id'];

// check weither feedback is valid
        if(typeof(response)!='undefined'){
            document.location = 'thankyou.php';
        }
    }

    FB.ui(obj, callback);
  }

</script>
0 голосов
/ 26 декабря 2011

Согласно документации, redirect_uri предназначен только для тех случаев, когда кто-то нажимает кнопку отмены (или закрывает диалоговое окно без общего доступа). Я не могу сказать из их документации, куда они идут, если они делятся. Однако ситуация, когда диалоговое окно iframed вкладывает в него страницу, очень странная. Мой первый инстинкт - что-то не так в настройках приложения. Убедитесь, что у вас есть версии http и https вашего приложения на Facebook.

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