27 votes

PostMethod setRequestBody (String) déconseillé - pourquoi?

Je suis à l'aide d'Apache Commons HttpClient PostMethod 3.1.

Dans le PostMethod classe il y a également trois méthodes pour le réglage de la méthode POST du corps de la requête:

setRequestBody(InputStream body)
setRequestBody(String body)
setRequestBody(NameValuePair[] parametersBody);

NameValuePair API

Les deux premières méthodes sont obsolètes. Quelqu'un sait pourquoi? Parce que si je veux mettre un fichier XML à la demande du corps, NameValuePair ne m'aide pas.

Quelqu'un connait une solution ou une solution?

40voto

Bozho Points 273663

La javadoc dit:

Déconseillé. utilisation setRequestEntity(RequestEntity)

RequestEntity a beaucoup de réalisateurs, à savoir:

ByteArrayRequestEntity, FileRequestEntity, InputStreamRequestEntity, MultipartRequestEntity, StringRequestEntity

Utilisez celui qui vous convient:

et ainsi de suite.

3voto

Tony Schwartz Points 21

Oui, par exemple,

 post.setRequestEntity( new StringRequestEntity( xml ) );
 

au lieu de

 post.setRequestBody( xml );
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X