Le backend Express a des problèmes pour recevoir les cookies de sous-domaine à l'aide de CORS et Cookie-Parser
<p>Je développe actuellement une application MERN (MongoDB, Express, React, Node.js) et je rencontre un problème avec la réception des cookies d'un sous-domaine dans le backend Express. J'ai configuré CORS et la gestion des cookies et tout fonctionne bien lorsque j'utilise une simple origine localhost, mais j'ai du mal à gérer les sous-domaines. </p>
<p>Voici un résumé des mesures que j'ai prises et des problèmes auxquels j'ai été confronté : </p>
<p><strong>Définir un cookie lors de la connexion : </strong></p>
<pre class="brush:php;toolbar:false;">res.cookie("token", jeton, {
httpUniquement : vrai,
mêmeSite : "aucun",
chemin: "/",
sécurisé : vrai,
});</pré>
<p>Lorsque j'essaie d'obtenir ce cookie en utilisant les paramètres cors, dont l'origine est : </p>
<pre class="brush:php;toolbar:false;">app.use(
cors({
origine : "http://localhost:3000",
informations d'identification : vrai,
})
);</pré>
<p>Mais lors des tests, lorsque j'utilise l'origine du sous-domaine, comme ceci : </p>
<pre class="brush:php;toolbar:false;">app.use(
cors({
origine : "http://binbros.localhost:3000",
informations d'identification : vrai,
})
);</pré>
<p>Il n'y a aucune erreur avec CORS sur le frontend et le cookie est créé avec succès sur le frontend. Mais lorsque j'essaie d'accéder aux cookies en utilisant ce paramètre CORS, je ne reçois aucun cookie. Mais en utilisant la même méthode et la même configuration CORS sur un simple hôte local, je peux obtenir tous les cookies normalement sans aucun problème. </p>
<p><code>console.log(req.cookies);</code></p>
<p>P.S :
Quand je suis sur localhost et que origin est localhost,
et j'enregistre le cookie,
Je peux récupérer tous les cookies du frontend, pas seulement celui que j'ai créé dans le backend
mais
Quand je suis sur l'origine du sous-domaine, je ne reçois même pas de cookie sur le backend,
Aucun créé par moi, ni aucun depuis le frontend</p>