Am o situație curioasă cu serverul meu NodeJS: se pare că căutarea site-ului web pe Google deconectează utilizatorul.
Pagina principală este https://emocoes.org/pt/inicio
. Mă conectez la site și pagina de pornire arată versiunea pentru utilizatori, cum ar fi un buton „Lista de conținut”.
Deschid o filă nouă, caut site-ul pe Google și dau clic pe link. Acum pagina de pornire nu mai arată versiunea pentru utilizatori. Parcă m-aș fi deconectat. Când reîmprospătesc prima filă cu versiunea de membru a paginii de pornire, afișează și versiunea publică. Am verificat dacă cookie-ul pentru sesiune din magazinul de sesiuni mai există.
Adresa URL de la interogarea Google este:
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwjC2J3D65H4AhX5Q_EDHRpnCvoQFnoECAYQAQ&url=https%3A%3A%2F1A%2F1A%2F1A%2F1A%2F2A%3A%3A%3A%3A%3A%3A%3A%3A%3A%3A%3A%3A%3A%3A%3A%3A%3A%3A%3A%3A%3A
Nu văd nicio problemă în acest link.
Am adăugat această urmărire la ruta serverului pentru pagina de pornire:
router.get("/pt/inicio", async (req, res) => {
console.log("URL = %o", req.originalUrl);
console.log("interogare = %o", req.query);
console.log("Utilizator = %o", req.user);
// Rezultatul după adresa URL Google este:
//[2022-06-03T17:40:21.308Z] URL = '/pt/inicio'
//[2022-06-03T17:40:21.308Z] interogare = {}
//[2022-06-03T17:40:21.309Z] Utilizator = nedefinit
...
});
Întrucât sesiunea există în magazinul MongoDB, este ca și cum dacă faceți clic pe linkul Google șterge cookie-ul din browser. Am Safari pe macOS, dar același lucru se întâmplă cu un alt utilizator pe Windows și Google Chrome.
Cum pot depana această problemă?