#javascript #reactjs #cookies #browser #progressive-web-apps
#javascript #reactjs #файлы cookie #браузер #progressive-веб-приложения
Вопрос:
У меня возникли проблемы с загрузкой cookie-файла токена в моем PWA (Progressive Web App) при сохранении и загрузке его из файлов cookie приложения. На настольном веб-сайте (браузере) файл cookie отображается как обычный и может быть загружен / восстановлен в обычном режиме. На мобильных устройствах, даже если PWA был установлен как веб-приложение на устройстве Android, файл cookie исчезает через некоторое время (обычно в течение получаса). Что в точности соответствует умолчанию для истечения срока действия файлов cookie.
Время истечения срока действия файла cookie по умолчанию составляет 30 минут.
Вопрос: как это решить?
Вопрос 2. почему он работает дольше в настольных браузерах?
Ответ №1:
Ответ на вопрос 1 заключается в явном указании времени истечения срока действия файла cookie. Только после этого мобильное устройство устанавливает для файлов cookie sesion cookie значение long life, и мобильный браузер снова распознает его и может загружать и восстанавливать файл cookie.
Простой JavaScript:
var timeInSeconds = 60;
document.cookie = 'token=XX;expires=' timeInSeconds ';path=/';
С помощью js-cookies:
var timeInDays = 1;
Cookies.set("token", "XX", {
expires: timeInDays,
path: "/",
});