Задать вопрос

Как вытащить именно нужную куку?

Привет. Есть код, вчера человек подкинул
var get_cookies = function(request, cookieName) {
		var cookies = {};
		request.headers && request.headers.cookie.split(';').forEach(function(cookie) {
		var parts = cookie.match(/(.*?)=(.*)$/)
		cookies[ parts[1].trim() ] = (parts[2] || '').trim();
		});
		return cookies[cookieName];
	};

Вопрос: Как получить из этого кода куку 'user'? Знаю, вопрос нуба, но прошу помощи, т.к. этот код подходит для сервера на node.js, а другие нет, потому что не читает document или еще какие-нибудь каки.

p.s никакие jquery не предлагать :)
  • Вопрос задан
  • 3603 просмотра
Подписаться 4 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 4
Можно еще plugins.jquery.com/cookie подключить

После этого, можно будет элементарно работать с кукисами:

// так можно установить новые кукисы или переписать значения у уже существующих:
$.cookie('cookie_name', 'cookie_value');

// получить значение существующих кукисов можно так:
$.cookie('cookie_name');
// если запрашиваемых кукисов не существует, то эта функция вернет null

// а так можно удалить кукисы
$.cookie('cookie_name', null);
Ответ написан
q1t
@q1t
нагуглил простую либу https://github.com/defunctzombie/node-cookie
можно ее и не использовать, а только глянуть как она парсит данные из хедера
В фреймоврках типа эксперсс уже встроена работа с куками
Ответ написан
@ruslite Автор вопроса
@icelaba где ваш ответ?куда пропал
Ответ написан
var getCookie = function (name) {
	var matches = document.cookie.match(new RegExp(
		"(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
	));
	return matches ? decodeURIComponent(matches[1]) : undefined;
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы