Question

Cela peut sembler une évidence, mais je ne peux pas trouver un moyen de le faire qui ne soit pas considéré comme un problème de sécurité (autre que les moyens évidents) ...

Je souhaite donc créer un module complémentaire que Firefox utilisera avec mon équipe. Fondamentalement, ce sera une icône de barre d'état nous indiquant si le cookie d'authentification de notre site d'outils a expiré, afin que nous puissions le savoir sans perdre aucun travail en cours dans le navigateur.

Au début, je pensais pouvoir faire vérifier le cookie par le module complémentaire, mais cela semble être un énorme problème pour une idée aussi simple. Ensuite, je me suis dit ... DUH ... que je pourrais juste demander à l'add-on d'essayer d'accéder à la page principale de notre site. Si un & Quot; Accès refusé & Quot; En réponse, il peut afficher l'icône & "; non connecté &"; mais s'il obtient autre chose, il peut afficher & "Connecté &";

.

Cependant, toutes les tentatives en ce sens avec AJAX se révèlent presque aussi difficiles que mes tentatives de cookies.

Existe-t-il un moyen simple, avec javascript de préférence, mais dans XUL autrement, de dire

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

où " pingURL " serait la méthode de " aller " à l'URL et obtenir la réponse?

Était-ce utile?

La solution

Exactement, pourquoi considérez-vous les cookies comme un gros problème? Ce serait sans doute plus rapide et probablement plus simple à mettre en œuvre. La lecture des cookies de chrome est simple et bien documentée . Demandez de l'aide si vous ne savez pas comment analyser le cookie.

Autres conseils

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);
            }
        }
    };
}

Cela devrait fonctionner ... Il suffit d'appeler avec " checkAccess ( http://example.com ', fonction (prêt) {}); " à titre d'exemple, où ready est une valeur booléenne.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top