5 votes

Pourquoi le cookie est-il disponible dans la demande immédiatement après avoir été défini dans la réponse ?

Dans pageload, si vous faites Response.Cookies.Add(..., immédiatement à la ligne suivante, vous pouvez accéder à ce cookie via Request.Cookies(...).

Je sais que sous le manteau, le cookie est ajouté à Request.Cookies par .net, mais la requête originale n'a jamais eu ce cookie.

Si ce que je dis est correct, pourquoi en est-il ainsi ? Le cookie ne devrait-il pas être disponible dans la demande suivante ? L'accès immédiat à Request.Cookies(... ne devrait-il pas être nul ?

6voto

Powerlord Points 43989

Vous avez raison, ASP.NET fait cela dans les coulisses :

Après avoir ajouté un cuisinier HttpResponse.Cookies c est immédiatement disponible. HttpRequest.Cookies c même si la réponse n'a pas été envoyée à au client.

-- Page HttpRequest.Cookies sur MSDN

Pourquoi est-ce ainsi ? À mon avis, c'est parce que c'est ainsi que les développeurs s'attendent à ce que cela fonctionne.

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