Содержит ли Set-Cookie более одного cookie? - PullRequest
3 голосов
/ 03 мая 2011

Я работаю над браузерной обработкой файлов cookie в Node.JS и хочу узнать, как далеко можно расширить этот код с NodeJS и HTTP-клиента - поддерживаются ли файлы cookie?

Код пропускает все после первой точки с запятой.

var cookie = get(response.headers, "Set-Cookie")
if (cookie) {
  cookie = (cookie + "").split(";").shift()
  set(opts.headers, "Cookie", cookie)
}

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

Я виделнесколько файлов cookie устанавливаются с использованием нескольких заголовков Set-Cookie.

1 Ответ

5 голосов
/ 04 мая 2011

Пропускать все после первой точки с запятой - плохая идея, поскольку она содержит метаданные cookie. Вот заголовок Set-Cookie, который я получил от StackOverflow (слегка отредактированный):

usr=t=ABCDEFGHIJ&s=23412341234; domain=.stackoverflow.com; expires=Fri, 04-Nov-2011 07:39:57 GMT; path=/; HttpOnly

Установка нескольких файлов cookie выглядит следующим образом:

hest2=spam, pony2=spam, sovs2=spam; expires=Wed, 04-May-2011 07:51:27 GMT, NO_CACHE=Y; expires=Wed, 04-May-2011 07:56:27 GMT; path=/; domain=.something.d6.revealit.dk

Так что строка cookie довольно сложна для анализа, поэтому я не думаю, что есть простой способ сделать это ...

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