URL запроса для статуса входа в систему, JavaScript - PullRequest
1 голос
/ 10 мая 2009

Это может показаться легким делом, но я не могу найти способ сделать это, который не считается проблемой безопасности (кроме очевидных способов) ...

Итак, я хочу создать дополнение для Firefox для использования с моей командой. По сути, это будет значок в строке состояния, сообщающий нам, если срок действия файла cookie для аутентификации для нашего сайта инструментов истек, поэтому мы можем сообщить об этом, не теряя при этом никакой работы в браузере.

Сначала я подумал, что я мог бы проверить дополнение cookie, но это, кажется, огромная проблема для такой простой идеи. Затем мне пришло в голову ... ДУХ ... что я могу просто добавить дополнения при попытке получить доступ к главной странице нашего сайта. Если он получает ответ «Отказано в доступе», он может отображать значок «Not Logged In», но если он получает что-то еще, он может отображать «Signed In».

Однако все попытки сделать это с помощью AJAX оказываются почти такими же трудными, как и мои попытки использования файлов cookie.

Есть ли простой способ, желательно с javascript, но в XUL иначе сказать

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

где "pingURL" будет методом "перехода" на URL и получения ответа?

Ответы [ 2 ]

2 голосов
/ 10 мая 2009
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', function (ready) {});" в качестве примера, где готовое значение является логическим значением.

0 голосов
/ 10 мая 2009

Точно, почему вы считаете куки огромной проблемой? Это, несомненно, будет быстрее и, вероятно, проще в реализации. Чтение файлов cookie из chrome просто и хорошо документировано . Обратитесь за помощью, если вы не можете понять, как разобрать cookie.

...