Actualmente estoy trabajando en un proyecto que guarda una sesión de inicio de sesión en cookies, pero actualmente tengo un problema al compartir las cookies entre el navegador y WebView.
Comienzo la interacción del usuario con el usuario leyendo un QrCode con la cámara, pero si el usuario quiere iniciar sesión, le envío un mensaje de texto con la sesión de inicio de sesión, pero no puedo encontrar las cookies que almacené anteriormente.
Hasta donde yo sé, eso se debe a que cuando almaceno cookies en la primera sesión, se almacena en un WebView en la aplicación de la cámara y cuando abro un enlace dentro de la aplicación de mensajes, abre otro WebView y las cookies no se comparten.
¿Hay alguna forma de conservar las cookies entre sesiones web?
Editar:
Aquí hay un código que usé para almacenar las cookies y el caché.
Galleta:
function setCookie(name, value, days) { var expires = ""; if (days) { var date = new Date(); date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); expires = "; expires=" + date.toUTCString(); } document.cookie = name + "=" + (value || "") + expires + "; path=/"; }
Cache:
async function saveCache(token) { try { let authCache = await caches.open('auth'); const responseBody = JSON.stringify({ token }); const response = new Response(responseBody); await authCache.put('/auth', response); } catch (error) { console.log("saveCache error:", { error }); } }