Peut-sendRedirect () agir comme une méthode de publication au lieu d'obtenir? - jsp / servlets
J'ai un formulaire simple qui accepte un nom d'utilisateur et un mot de passe. J'ai utiliser sendRedirect()
méthode pour la page de redirection vers une page si la session est valide et d'un autre si ce n'. J'ai besoin d'utiliser sendRedirect()
et pas forward()
depuis les autres pages sont situés dans un autre serveur. J'ai remarqué que lors de l'utilisation de
response.sendRedirect(response.encodeRedirectURL("FileName.jsp?paramName=" +value));
la sendRedirect()
est à l'aide de la GET
méthode depuis nom=valeur sont présentés dans l'URL. Ce n'est pas souhaitable pour moi, car je ne veux pas de ces valeurs à afficher dans l'URL pour des raisons de sécurité.
Est-il un moyen de POST
ces valeurs à l'aide sendRedirect() ?
J'ai essayé de faire un formulaire avec la méthode POST
qui cache les valeurs que j'ai besoin mais toujours pas de chance
Que puis-je faire s'il vous plaît? Merci 🙂
source d'informationauteur Bernice
Vous devez vous connecter pour publier un commentaire.
Non, il n'est pas possible. Le seul (sale) solution que je vois est à l'avant d'une page contenant un formulaire masqué (avec la méthode POST) et un script JavaScript en soumettant ce formulaire.
C'est un peu vieux, mais ici, j'ai réussi à exécuter ce:
Voir http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.8 pour l'explication de HTTP 307 code d'état.
l'utilisation de javascript
Découvrez cette fois :
Non, une redirection HTTP utilisera toujours OBTENIR pour la page cible.
Toutefois, les données ne sont pas beaucoup plus sûr que d'OBTENIR les données de toute façon. L'utilisateur peut toujours les modifier. Les stocker dans la session à la place.
Utilisation sendredirect sans donner tous les paramètres, et de cacher ces paramètres dans une session d'étendue de servlet, et si vous avez besoin de ces paramètres dans la redirection de la page, de les utiliser grâce à cette servlet.