Question

Quelles sont les trois manières dont les applications Web peuvent fournir une expérience avec état à l’utilisateur? (avec http) Je sais que Sessions et Cookies sont deux d’entre eux, mais je ne connais pas de troisième (base de données ??)

Oui, une question d'une conférence.

Était-ce utile?

La solution

Il n'y a effectivement que deux approches :

  • Identifiez l'utilisateur derrière chaque demande et associez-le à un contexte de session (stocké en mémoire, dans une base de données, où que vous soyez). C'est là que les identifiants de session ou les cookies (à des fins d'identifiant) entrent en jeu.
  • Assurez-vous que le client renvoie 100% du contexte (en intégrant le contexte dans les URL ou les formulaires qui seront utilisés par le client; ViewState fonctionne de cette manière (*). De plus, les cookies peuvent également être utilisés. pour stocker un tel contexte.

La manière dont les données de contexte sont persistées entre les demandes et, pour les systèmes basés sur l'identification de l'utilisateur, la manière dont l'identité est fournie, fournit de nombreuses variations sur les deux approches répertoriées ci-dessus . Par exemple:

  • contexte dans la base de données,
  • contexte en mémoire
  • contexte dans un fichier
  • contexte transmis dans ViewState (*)
  • contexte ...,
  • contexte stocké dans un cookie
  • ID de SessionID transmis à URL / Form
  • ID du cookie

(*) edit: À l'origine, ViewState était marqué comme un périphérique de passage d'identifiant de session, mais comme l'a souligné erikkallen, l'utilisation par défaut de ViewState consiste à transmettre les informations de contexte, pas l'identifiant.

En fin de compte, tout dépend du fait que le contexte est stocké côté serveur ou transféré vers / depuis le client avec chaque demande.

Autres conseils

Il y a plus de trois.

  • État de la session
  • État d'affichage
  • Cookies
  • Base de données
  • Cache
  • Écriture de données dans des fichiers

En principe, tout ce qui peut être utilisé peut conserver des données persistantes dans une requête Web pour stocker un état.

Cela ressemble à une question de devoirs. Quoi qu'il en soit, c'est vague .. Des moyens de suivre un utilisateur? Comment stocker les données d'un utilisateur?

Le suivi peut être effectué avec des cookies, un jeton d’URL ou un champ caché (dans le cas de formulaires).

Le stockage des données peut se faire de différentes manières.

Le scénario le plus courant consiste à stocker un identifiant de session dans un cookie et à utiliser cet identifiant pour récupérer la session de l'utilisateur.

AJAX est le troisième élément permettant à l’application Web sans état d’apparaître comme étant dynamique.

Il continue à envoyer des demandes dans les coulisses, mais pour l'utilisateur - l'écran ne s'actualise pas et ne ressemble pas à un site Web.

Vous pouvez avoir un site Web basé sur une base de données, mais ce ne sera pas avec état.

Les

chaînes de chaînes de caractères constituent l’un des moyens les plus courants de procéder. Ex.

http://www.site.com/products /index.aspx?productId=3&page=2&showInactive=n

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top