Facebook Connect / Graph - проблемы в Internet Explorer с диалогом входа в систему fb: (не закрывается) - PullRequest
1 голос
/ 01 июня 2010

Я пытаюсь заставить фейсбук-коннект работать на моем локальном хосте. В FireFox и Chrome это работает отлично. В Internet Explorer:

  • в диалоге подключения появляется ошибка. Это:

    Неверный аргумент URL междоменного получателя Facebook Connect (http://static.ak.fbcdn.net/connect/xd_proxy.php#?=&cb=f1e33405f2824e9&origin=http%3A%2F%2Flocalhost%2Ff78888c44d2c37&relation=opener&transport=flash&frame=f144cb110fc0cc&result=xxRESULTTOKENxx) должен иметь в качестве префикса URL-адрес приложения (http://localhost:8080/)). URL-адрес Connect можно настроить в редакторе параметров приложения.

  • когда аутентификация завершается успешно, Internet Explorer перенаправляет во всплывающем окне на страницу на локальном хосте, то есть, мой URL-адрес для подключения к Facebook. С Chrome и Firefox он закрывает всплывающее окно и позволяет обработчику перезагрузить страницу.

Это очень неприятно, поскольку поведение в Chrome и Firefox идеально. Пожалуйста, не могли бы вы дать несколько советов - я действительно застрял с этим. Мой код HTML ниже:

<html xmlns="http://www.w3.org/1999/xhtml" 
xmlns:fb="http://www.facebook.com/2008/fbml"
xml:lang="en" lang="en">

<fb:login-button></fb:login-button>


<div id="fb-root"></div>
        <script src="http://connect.facebook.net/en_US/all.js"></script>
        <script>
        FB.init({appId: 'MY_APP_ID', status: true, cookie: true,xfbml: true});
        FB.Event.subscribe('auth.login', function(response) {
                window.location.reload();
            });


        </script>

Thank you.

Ответы [ 5 ]

3 голосов
/ 10 июля 2012

На тот случай, если другие люди спотыкаются здесь и не улавливают это в коде OP, это сработало после того, как я добавил атрибут xmlns: fb в мой открытый html-узел:

<html xmlns:fb="http://www.facebook.com/2008/fbml">
3 голосов
/ 02 августа 2010

Я думаю, что это ошибка в JavaScript на Facebook (подробности в сообщении на форуме ).

Я нашел обходной путь: использование http://127.0.0.1:8080/ в браузере вместо http://localhost:8080/, похоже, работает во всех трех Internet Explorer, Firefox и Chrome.

0 голосов
/ 01 июля 2015

Как указал Саксон Дрюс, ответ, помеченный как правильный, больше не работает. Я смог решить свои проблемы с помощью всплывающего окна Fb.login () в IE11, работающего на localhost, выполнив две вещи (я использую Visual Studio 2013):

1) Запустите VS 2013 от имени администратора и в свойствах решения измените URL проекта на: http://localhost/ 2) Отражение изменения URL в настройках приложения Facebook на портале для разработчиков

0 голосов
/ 11 ноября 2010

Также убедитесь, что этот тег находится сразу после тега вашего тела: <div id="fb-root">

0 голосов
/ 02 июня 2010

Благодаря форуму разработчиков Facebook у меня есть свой ответ. Это странное поведение вызвано использованием номера порта в URL-адресе Facebook Connect, т.е. не стандартным портом 80, который не нужно указывать в вашем URL.

Полный ответ здесь:

http://forum.developers.facebook.com/viewtopic.php?pid=232589

...