На самом деле я могу написать это нормально как файл cookie:
["4c3dd477c441e17957000002","4c2ac3cc68fe54616e00002e","4c3dd477c441e17957000003","4c3dd477c441e17957000004"]
Но как мне прочитать cookie?
Я использую node.js / express.js (и сценарий кофе), и когда я читаю его, я получаю ключ cookie, это просто первое значение указанного выше массива.
Надо как-то разбирать? Или вообще более сложная сериализация / десериализация?
Благодарность
2 ответа
Файлы cookie разделяются запятыми, поэтому, когда вы храните JSON, он разбивается на несколько файлов cookie. Вам нужно будет каким-то образом закодировать строку JSON перед записью в Cookie, а затем декодировать при чтении.
Например, вы можете взять строку JSON и заменить части '","' следующим образом:
// encode
mycookie = json.replace(/","/g, '"-"');
// decode
json = mycookie.replace(/"-"/g, '","');
Очевидно, что это не общее решение, так как вам нужно будет убедиться, что заменяемые строки не отображаются в контенте (даже экранированные)
Я думаю, вы можете просто закодировать так:
// encode
mycookie = json.replace(/","/g, '"%2C"');
И никаких изменений в декодировании не требуется
Похожие вопросы
Связанные вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript / JS) и его различных диалектах / реализациях (кроме ActionScript). Включите все соответствующие теги в свой вопрос; например, [node.js], [jquery], [json] и т. д.