PostMethod setRequestBody (String) deprecated - why?

J'utilise Apache Commons HttpClient PostMethod 3.1.

dans la classe PostMethod il y a aussi trois méthodes pour définir le corps de la requête de la méthode POST:

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 XML à request body, NameValuePair ne m'aide pas.

est ce que quelqu'un connait une solution ou une solution?

32
demandé sur Joachim Sauer 2010-01-19 12:38:23

2 réponses

le javadoc dit:

déprécié. use setRequestEntity (RequestEntity)

RequestEntity a beaucoup d'implémenteurs, à savoir:

Bytearrayrequestity, Filerequestity, Inputstreamrequestity, Multipartrequestity, Stringrequestity

Utiliser celle qui vous convient:

et ainsi de suite.

47
répondu Bozho 2010-01-19 09:48:39

Oui, donc, par exemple,

post.setRequestEntity( new StringRequestEntity( xml ) );

au lieu de

post.setRequestBody( xml );
4
répondu Tony Schwartz 2011-03-07 15:47:29