document.cookie не работает - PullRequest
       1

document.cookie не работает

2 голосов
/ 27 февраля 2011

Я пытаюсь использовать document.cookie в JavaScript в предупреждении (для экспериментальных целей).Первоначально он отображал файл cookie нормально, внезапно он отображал "style_cookie = null".

Я делал это в phpbb3.Я пытаюсь добавить пользовательскую страницу в нее, и я нахожусь в процессе ее создания.Итак, установщик печенья phpbb3.

Я не уверен, что здесь происходит не так?Это связано с тайм-аутом или истечением срока действия куки?Я в замешательстве, была бы признательна за помощь.

Код выглядит следующим образом:

alert(document.cookie);

Спасибо, Аби

Ответы [ 4 ]

6 голосов
/ 01 февраля 2012

У меня работает эта штука, для Android 2.2 javascript document.cookie работает нормально, просто убедитесь, что в вашем Webview ... javascript включен следующим образом:

yourWebViewVariable.getSettings().setJavaScriptEnabled(true);

для Android 3.1 просто добавьте это в свой java-файл onLoadInit:

CookieManager.setAcceptFileSchemeCookies(true); // Это строка, которая специально заставляет ее работать, поэтому другие строки необязательны

CookieManager cookieManager = CookieManager.getInstance(); cookieManager.setAcceptCookie(true); cookieManager.acceptCookie();

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

http://android -er.blogspot.com / 2011/10 / run-android-java-code-from-webpage.html

http://android -er.blogspot.com / 2011/10 / call-javascript-inside-webview-from.html

Спасибо и удачи!

1 голос
/ 27 февраля 2011

Это может быть вызвано несколькими причинами:

  • срок действия файла cookie (если вы не установите срок действия файла cookie для сеанса)
  • только http - вы можете указатьбраузер не отправляет значение cookie
  • область действия cookie - cookie может быть действительным только для некоторых поддоменов или subURL *

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

0 голосов
/ 17 декабря 2011

Вы тестировали свой скрипт через http или просто вызывали HTML-файл?куки отправляются через http, поэтому вы должны называть их внутри веб-сервера как (http://localhost/test_cookie.html)

0 голосов
/ 27 февраля 2011

следующие две функции безопасны для установки или получения файлов cookie, а также проверены


function setCookie(c_name, value, exdays)
{
    var exdate = new Date();
    exdate.setDate(exdate.getDate() + exdays);
    var c_value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString());
    document.cookie = c_name + "=" + c_value;
}
function getCookie(c_name)
{
    var i, x, y, ARRcookies = document.cookie.split(";");
    for (i = 0; i < ARRcookies.length; i++)
    {
        x = ARRcookies[i].substr(0, ARRcookies[i].indexOf("="));
        y = ARRcookies[i].substr(ARRcookies[i].indexOf("=") + 1);
        x = x.replace(/^\s+|\s+$/g, "");
        if (x == c_name)
        {
            return unescape(y);
        }
    }
}

для получения дополнительной информации посетите эту страницу в W3Schools

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...