ASP.NET Response.Cookie клиент или сервер? - PullRequest
0 голосов
/ 07 марта 2011

При звонке Response.Cookie.Add(new HttpCookie("MyCookie", "objValue")); куда сохраняется куки? на клиентской или серверной машине?

EDIT: если сохранено на клиентском компьютере, как я могу тогда прочитать его из javascript? Я попробовал этот вид сценария.

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

Я не могу получить куки, которые я сохранил из кода позади. Когда я смотрю на объект document.cookie, это просто пустая строка.

Сценарий:

  1. На Page_Init () в коде позади. Я создаю куки, используя Response.Cookie.Add(new HttpCookie("MyCookie", "cookieValue"));.
  2. На стороне клиента я пытаюсь прочитать cookie, сохраненный из кода при загрузке страницы, используя приведенный выше фрагмент, но он возвращает undefined

Ответы [ 3 ]

1 голос
/ 07 марта 2011

Клиентская машина. Я уверен, что Google мог бы дать вам хорошее объяснение, но я использую его каждый день, и опыт - мой источник.

1 голос
/ 07 марта 2011

Как Википедия объясняет , строковые значения куки, которые хранятся на клиенте.
Они отправляются на сервер с каждым HTTP-запросом в виде Cookie: заголовков.

Вы можете сохранитьпроизвольные объекты на сервере, использующие состояние сеанса .

0 голосов
/ 07 марта 2011

Файлы cookie всегда сохраняются на клиентском компьютере.

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