Кнопка отмены FB.login сделать перенаправление - PullRequest
0 голосов
/ 23 февраля 2012

В настоящее время у меня есть страница под http://mydomain.com/me/myself/1234 На этой странице я включил пользовательскую ссылку, чтобы поделиться информацией на этой странице в Facebook. представьте, что вы вошли не в фейсбук, а в мое приложение и заходите на страницу выше. Если вы нажмете на ссылку, появится всплывающее окно входа в FB, чтобы дать вам возможность пройти аутентификацию. мой код для размещения на стене выглядит так:

function loggedIn() {

    if (typeof(FB) != 'undefined' && FB != null ) {

    FB.login(function(response) {
           if (response.session || response.authResponse) {
            postToWall(); 
           } else {
             return false,              
               }

         }, {scope: 'publish_stream'});
     return false;
    }
}

function postToWall() {
    var prodName= 'test';
    var prodPic = 'test.jpg';
    var linkUrl = 'http://mydomain.com/me/myself/1234';
    var tmpObj = new Object();
    tmpObj.value = "CUSTOM";
    tmpObj.friends = "ALL_FRIENDS";

    var wallPost = {
            message : " I've seen a " + prodName ,
            picture : prodPic,
            link: linkUrl,
            name: "the name",
            description: "a little description",
            privacy: tmpObj

        };
        FB.api('/me/feed', 'post', wallPost , function(response) {

          if (!response || response.error) {
            //alert('Error occured');

          } else {
            //alert('Post ID: ' + response);
          }
        });

    }

Итак, единственная проблема сейчас: если я нажимаю кнопку отмены в диалоговом окне входа в систему, я перенаправляюсь на мою страницу .com http://mydomain.com., что мне нужно, чтобы остаться на той же странице. Я не вижу ошибку, которую я делаю.

Буду признателен за любую помощь. с уважением, Рамо

1 Ответ

0 голосов
/ 24 февраля 2012

Я не понимаю, почему у вас есть функция с именем loggedIn () , вызывающая функцию с именем postToWall () . Возможно, вы захотите изменить или переименовать функцию loggedIn () .

Вы не опубликовали код обработчика событий для своей кнопки. Однако, если вы перехватываете событие click, но не возвращает false , то будет отображаться не только окно входа в Facebook, но и обычная ситуация, возникающая при нажатии на ссылку на веб-странице. Тем не менее, это не похоже на проблему, но, пожалуйста, опубликуйте больше кода, чтобы мы могли знать наверняка.

...