مشكلة زر الاتصال Facebook في Chrome (نحن نستخدم Django و Django-Socialauth)

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

سؤال

نحن نستخدم django و django-socialauth بالنسبة لـ Auth مع Google/FB/Twitter ، ولكن هناك مشكلة في زر Connect Facebook فقط في Chrome (لا Safari) ، لا تعرض الزر.

هل كانت مفيدة؟

المحلول 2

إذا كان لديك buttom مخصص لـ FB ، فيمكنك استخدام Facebook Middleware لإصلاح هذا:

أضف هذا إلى الخاص بك MIDDLEWARE_CLASSES في settings.py:

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

نصائح أخرى

ههه - لقد وجدت هذا المنشور حوالي 3H بعد نشره عبر بحث Google ، واجهت مشكلة ذات صلة باستخدام Django -Socialauth حيث كان الزر يظهر ولكن لم يسرد المستخدم بنجاح إذا تم تسجيل الدخول بالفعل على Facebook.com.

استخدم الكود التالي لإصلاحه ، والذي يتضمن ترميز صورة زر الاتصال ، لذا يجب حل مشكلتك أيضًا (اكتشف WebKit ويسجل المستخدم أولاً ، والذي يحدد مشكلتي. نظرًا لأن الخطأ يؤثر فقط على WebKit وتسجيل الخروج أولاً ، فهو ليس رائعًا بالنسبة للمستخدمين ، أردت أن أحتفظ بالسلوك القياسي للمتصفحات الأخرى - لقد استخدمت jQuery للكشف عن المتصفح ولكن يمكنك استخدام طريقة أخرى أو ببساطة تخطي إذا في 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