49 votes

Safari n'active pas les cookies, mais IE / FF le fait.

J'ai trouvé un étrange problème de cookie sur safari. Si vous surfez sur http://2much.ch vous pouvez entrer avec FF/IE et surfer à l'intérieur du site.

Mais si vous utilisez Safari, vous ne pouvez entrer qu'une seule fois ; vous ne pouvez pas naviguer à l'intérieur du site. J'ai découvert que Safari ne définit pas le cookie saisi, mais que FF/IE le fait.

Qu'est-ce qui ne va pas ?

2 votes

Je n'ai rien à ajouter, si ce n'est que le nom de domaine est le meilleur de tous les temps.

0 votes

Hehe, thx :) Peut-être que je le vendrai :)

0 votes

Peut-être pourriez-vous expliquer un peu la partie relative à l'installation des cookies. Par exemple : est-ce fait par un module complémentaire de Plone ou par un code personnalisé ?

0voto

Philip Aarseth Points 25

Après bien des difficultés, j'ai découvert que Safari (15.3) enregistre effectivement et mon cookie, mais il ne s'affiche jamais dans les outils de développement storage -> cookies mais cela fonctionne bien.

Voici le cookie que je crée et renvoie dans une fonction Netlify.

const secureCookie = cookie.serialize('jwtToken', JSON.stringify(jwtToken), {
      secure: process.env.CONTEXT !== 'dev',
      domain: process.env.CONTEXT === 'dev' ? 'localhost' : '.domain.com',
      httpOnly: true,
      sameSite: true,
      expires: new Date(Date.now() + (1000 * jwtToken.expires_in))
    })

et le retour de la fonction netlify

return {
      statusCode: 200,
      headers: {
        "Cache-Control": "no-cache",
      },
      multiValueHeaders: {
        "Set-Cookie": [secureCookie],
      },
      body: JSON.stringify(body),
    }

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X