Notion de requête

Ces deux interfaces modélisent une requête HTTP. Elles exposent donc des méthodes qui permettent d'accéder à l'ensemble des paramètres, en-têtes, et plus généralement au contenu d'une telle requête.

Une requête HTTP peut porter un certain nombre de paramètres. Dans le cas d'une requête de type GET ces paramètres sont codés sur l'URL de requête. Dans le cas d'une requête de type POST, il se trouvent dans le flux HTTP.

Dans tous les cas, l'API servlet décode ces paramètres, et les expose au travers de quatre méthodes :

Notons que les valeurs des paramètres sont toujours de type String, tout simplement parce que c'est le type utilisé dans l'en-tête HTTP. Il appartient donc à l'application de convertir ces chaînes de caractères dans les bons types.

Plusieurs méthodes permettent d'accéder aux éléments de l'en-tête.

Les éléments de l'URL d'accès à la ressource que nous sommes en train de traiter sont exposés au travers de trois variables : contextPath, servletPath et pathInfo. Ces trois variables sont accessibles via leurs getters standards.

De plus, deux variables sont disponibles : requestURI et requestURL.

Chacune de ces trois variables, si elle n'est pas vide, commence toujours par le caractère /.

Notons qu'une page JSP est une servlet, que son servletPath porte le nom de cette page et que son pathInfo est vide.

Notons enfin que l'on a toujours :

    requestURI = contextPath + servletPath + pathInfo

Trois méthodes nous permettent d'accéder aux paramètres du client qui fait la requête :

Tous les serveurs de servlets exposent un mécanisme d'authentification standard, qui permet de fixer l'identité d'un utilisateur. La configuration de la sécurité associe les utilisateurs à des rôles, et c'est à ces rôles que le serveur donne des droits et impose des restrictions. La requête expose deux méthodes permettant d'accéder à des informations sur les rôles que possède un utilisateur authentifié :

Une méthode permet d'accéder à la session HTTP dans laquelle cette requête se place.