سؤال

قد يبدو هذا وكأنه غير عقلاني ، لكن لا يمكنني إيجاد طريقة للقيام بذلك لا تعتبر مشكلة أمنية (بخلاف الطرق الواضحة) ...

لذلك ، أريد أن أبني وظيفة إضافية لاستخدام Firefox مع فريقي. في الأساس ، سيكون أيقونة شريط الحالة يتيح لنا معرفة ما إذا كان ملف تعريف ارتباط المصادقة لموقع أدواتنا قد انتهت صلاحيته ، حتى نتمكن من معرفة أي عمل في المتصفح حاليًا.

في البداية اعتقدت أنه يمكن أن أحصل على الإضافة إلى ملف تعريف الارتباط ، ولكن يبدو أن هذا يمثل مشكلة كبيرة لمثل هذه الفكرة البسيطة. ثم حدث لي ... duh ... يمكن أن أحصل على الإضافة في محاولة للوصول إلى الصفحة الرئيسية لموقعنا. إذا حصل على استجابة "Access Refered" ، فيمكنه إظهار أيقونة "لم يتم تسجيل الدخول" ، ولكن إذا حصل على أي شيء آخر ، فيمكن أن تظهر "موقعة".

ومع ذلك ، فإن جميع المحاولات للقيام بذلك مع Ajax تثبت أنها صعبة تقريبًا مثل محاولات ملفات تعريف الارتباط الخاصة بي.

هل هناك طريقة بسيطة ، مع جافا سكريبت ويفضل ، ولكن في Xul على خلاف ذلك ، يمكن القول

var url = "http://example.com";
var response = pingURL(url, "blah);
status = (response = "Welcome!") ? "Signed in" : "Not Signed In";

أين ستكون "Pingurl" طريقة "الذهاب" إلى عنوان URL والحصول على الرد؟

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

المحلول

بالضبط لماذا تعتبر ملفات تعريف الارتباط متاعب كبيرة؟ هذا سيكون بلا شك أسرع وربما أبسط في التنفيذ. قراءة ملفات تعريف الارتباط من Chrome بسيطة وموثقة جيدًا. اطلب المساعدة إذا لم تتمكن من معرفة كيفية تحليل ملف تعريف الارتباط.

نصائح أخرى

function checkAccess(url, callback) {
    var xhr = new XMLHttpRequest();
    xhr.open("GET", url);
    xhr.onreadystatechange = function () {
        if (xhr.readyState == 4) {
            if (xhr.status == 200) {
                callback(true);
            } else {
                callback(false);
            }
        }
    };
}

هذا يجب أن يعمل ... فقط اتصل بـ "CheckAccess ('http://example.com'، وظيفة (جاهزة) {}) ؛ "كمثال حيث يكون الاستعداد قيمة منطقية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top