Использование постоянных файлов cookie с помощью react на мобильных устройствах

#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: "/",
  });