Maison > développement back-end > Golang > le corps du texte

Pourquoi mon navigateur ne stocke-t-il pas les cookies issus des demandes d'origine croisée ?

Linda Hamilton
Libérer: 2024-11-24 20:49:18
original
237 Les gens l'ont consulté

Why Won't My Browser Store Cookies from Cross-Origin Requests?

Le navigateur refuse de stocker les cookies dans les requêtes d'origine croisée

Description du problème :

Une application React utilisant un serveur Go rencontre des difficultés à stocker un cookie envoyé dans la réponse à la demande de connexion malgré sa configuration réussie. Le cookie est visible dans l'onglet réseau, mais les navigateurs (Chrome et Firefox) ne l'enregistrent pas.

Cause profonde et solution :

Après une enquête plus approfondie, il a été découvert que l'ingrédient manquant était l'indicateur « informations d'identification » dans la demande de récupération. La configuration de « informations d'identification : « inclure » » permet au navigateur de gérer et de stocker les cookies reçus dans la réponse. La demande de récupération corrigée est :

fetch(`${url}/login`, {
    method: "POST",
    headers: {
        "Content-Type": "application/json",
    },
    credentials: "include", // This here
    body: JSON.stringify({
        email: userDetails.email,
        password: userDetails.password,
    }),
}).then((response) => { ...
Copier après la connexion

Précautions supplémentaires :

  • Assurez-vous que le serveur est configuré avec le gestionnaire CORS pour autoriser les requêtes d'origine croisée avec informations d'identification.
  • Pour les configurations CORS personnalisées, définissez « AllowCredentials » sur vrai.
  • Vérifiez les en-têtes de réponse pour confirmer que le cookie est défini comme prévu.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal