2012-04-26 1 views
0

le problème comme dans le titre. Je pensais que les variables de session sont stockées dans la mémoire et que le seul cookie créé est un cookie SessionID. Pour une raison quelconque, chaque fois que je crée une variable de session, elle crée également un cookie avec le même nom. Est-ce un comportement normal?Création de variable de session crée automatiquement un cookie

code:

HttpContext.Current.Session[varName.ToString()] = value; 
+1

Voici quelques [informations] (http://msdn.microsoft.com/fr-fr/library/ms178581.aspx) concernant l'état de la session. Lisez la section sur 'SessionIs sans cookie'. Il semble que vous pouvez désactiver les cookies si c'est ce que vous désirez. – Jeremy

+2

Il est normal d'avoir une session de cookie. Il n'est pas normal d'avoir pour chaque variable de la session un cookie avec le même nom. – Aristos

Répondre

1

Est-ce un comportement normal?

Oui, c'est absolument normal. Par défaut, les sessions sont suivies par des cookies. Ainsi, lorsque vous stockez quelque chose dans la session, un cookie avec un identifiant unique est émis pour le client de sorte que lors des requêtes suivantes, ce client envoie le cookie et le serveur peut récupérer tout ce qu'il a stocké en mémoire en utilisant cet identifiant.

Si, lors de demandes ultérieures, vous mettez à jour la valeur de la session, il n'y aura pas de nouveau cookie. La session est déjà associée à ce client.

+0

Je pense que vous avez mal compris. Créer un cookie SessionID est normal, mais pour une raison quelconque, il crée également un cookie avec le même nom qu'une variable de session. Est-ce normal aussi? –

+0

Non, ce n'est pas normal et ça ne devrait pas arriver. Donc vous dites qu'après avoir invoqué une action de contrôleur contenant la ligne de code que vous avez montrée dans votre question, 2 cookies sont créés? Par ailleurs, pourquoi utilisez-vous 'HttpContext.Current'? Vous ne devriez jamais utiliser ça. Utilisez les abstractions que le framework vous fournit pour accéder à la session. –

Questions connexes