#javascript #cookies
#javascript #файлы cookie
Вопрос:
Может ли кто-нибудь обновить следующий код, чтобы срок действия cookie истек через 30 секунд.
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;
}
Комментарии:
1. Итак … вы выполнили копирование / вставку из w3schools… Quirksmode имеет лучшее объяснение файлов cookie в JavaScript: quirksmode.org/js/cookies.html
2. Что ты пытаешься сделать? Почему вы хотите, чтобы срок его действия истекал так быстро?
3. @Jason Могут быть случаи, когда вы просто хотите передавать данные между страницами, не отправляя эту информацию по проводам. В подобных случаях быстро истекающий cookie делает хорошую работу.
Ответ №1:
function createCookie(name, value) {
var date = new Date();
date.setTime(date.getTime() (30*1000));
var expires = "; expires=" date.toGMTString();
document.cookie = name "=" value expires "; path=/";
}
Комментарии:
1. Почему мы используем toGMTString() в expires ? Есть ли какая-то конкретная причина?
Ответ №2:
При установке файла cookie можно указать максимальный возраст в секундах:
function setCookie(name, value, maxAgeSeconds) {
var maxAgeSegment = "; max-age=" maxAgeSeconds;
document.cookie = encodeURI(name) "=" encodeURI(value) maxAgeSegment;
}
Использование:
setCookie("username", "blaise", 30);