Maison >Java >javaDidacticiel >Comment accéder à la charge utile des requêtes POST dans les servlets Java ?

Comment accéder à la charge utile des requêtes POST dans les servlets Java ?

DDD
DDDoriginal
2024-11-04 19:03:021010parcourir

How Do I Access POST Request Payload in Java Servlets?

Accès à la charge utile de la requête POST dans les servlets Java

Lors de la réception de requêtes POST dans les servlets Java, il est courant de rencontrer des problèmes pour accéder au contenu de la charge utile de la requête. Le guide suivant relève ce défi en explorant les différentes méthodes disponibles.

Récupération des données de charge utile

Pour accéder à la charge utile de la requête dans la méthode doPost, envisagez les techniques suivantes :

  • Utilisation de getReader() :
<code class="java">BufferedReader br = request.getReader();
String payload = br.readLine();</code>

getReader() renvoie un BufferedReader qui vous permet de lire le corps de la requête.

  • Utilisation de getInputStream() :
<code class="java">InputStream is = request.getInputStream();
byte[] payloadBytes = is.readAllBytes();</code>

getInputStream() renvoie un ServletInputStream qui donne accès aux données binaires.

Exemple de mise en œuvre

L'extrait de code suivant montre comment récupérer la charge utile de la requête à l'aide de getReader() :

<code class="java">@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    BufferedReader br = request.getReader();
    String payload = br.readLine();

    // Process the payload data...
}</code>

Remarque :

Il est important de noter qu'il n'est pas recommandé d'utiliser à la fois getReader() et getInputStream() pour lire le corps de la requête. Une fois l’une ou l’autre méthode utilisée, l’autre méthode ne doit pas être invoquée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn