Проблема с кнопкой подключения к Facebook в Chrome (мы используем django и django-socialauth)

StackOverflow https://stackoverflow.com/questions/2274693

Вопрос

Мы используем django и django-socialauth для аутентификации с помощью google/fb/twitter, но есть проблема с кнопкой подключения к Facebook только в Chrome (ни в Safari), кнопка не отображается.

Это было полезно?

Решение 2

Если у вас есть собственная кнопка для Facebook, вы можете использовать промежуточное программное обеспечение Facebook, чтобы исправить это:

добавьте это в свой MIDDLEWARE_CLASSES в settings.py:

...
'facebook.djangofb.FacebookMiddleware',
...

Другие советы

Ха! Я нашел этот пост примерно через 3 часа после того, как вы разместили его через поиск в Google, у меня возникла проблема с использованием django-socialauth, когда кнопка отображалась, но пользователь не мог успешно войти в систему, если он уже вошел в систему на Facebook.com.

Чтобы исправить это, я использовал следующий код, который включает в себя жесткое кодирование изображения кнопки подключения, поэтому он также должен решить вашу проблему (сначала обнаруживает веб-кит и выводит пользователя из системы, что устраняет мою проблему.Поскольку ошибка затронула только webkit, и первый выход из системы не очень хорош для пользователей, я хотел сохранить стандартное поведение для других браузеров - я использовал jQuery для обнаружения браузера, но вы можете использовать другой способ или просто пропустить IF в Javascript и использовать поведение «сначала выход из системы» для всех браузеров)

<a href="#" onclick="if ($.browser.webkit || $.browser.safari) { FB.Connect.logout(function(){FB.Connect.requireSession(facebook_onlogin);return false;}); } else { FB.Connect.requireSession(facebook_onlogin); }; return false;">
    <img id="RES_ID_fb_login_image" src="http://static.ak.fbcdn.net/rsrc.php/zA114/hash/7e3mp7ee.gif" alt="Connect">
</a>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top