Facebook JS SDK: отображение диалогового окна oAuth в iframe - PullRequest
5 голосов
/ 26 сентября 2011

Я пытаюсь отобразить диалог пользовательского интерфейса Facebook внутри моего приложения iframe, чтобы получить расширенное разрешение, которого у нас сейчас нет.Это было легко достигнуто с помощью старого SDK.Однако, используя новую библиотеку, я получаю диалоговое окно Facebook iframe, которое появляется модально, но никогда не прекращает загрузку.Изменение метода на «страницу» означает, что я получаю всплывающее окно браузера, которое просто говорит: «Произошла ошибка».Мой код выглядит следующим образом:

var attachment = {
    display: 'iframe',
    method: 'oauth',
    scope: perms,
    access_token: '<?php echo $this->accessToken; ?>' // this is definitely valid access token         
};
FB.ui(attachment, function(response){
    pr(response);
});

Я надеюсь, что это возможно при использовании нового SDK, в документах обязательно указывается, что iframe является действительным параметром отображения.

Заранее спасибо.

G

Ответы [ 2 ]

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

iframe не является допустимым параметром отображения для диалогового окна oauth из-за риска перехвата кликов. Также я бы предложил использовать FB.login для получения расширенного разрешения:

https://developers.facebook.com/docs/reference/javascript/FB.login/

надеюсь, это поможет

0 голосов
/ 26 сентября 2011

Это было сломано на некоторое время.(Взгляните на багтрекер с «разрешением FB.ui» в качестве поисковых слов.) Обходной путь - использовать FB.login вместо FB.ui.Конечно, это означает, что вместо фрейма появится всплывающее окно.

...