PostMethod setRequestBody (String) ist veraltet - warum?
-
21-09-2019 - |
Frage
Ich bin mit Apache Commons Httpclient PostMethod 3.1.
In der PostMethod Klasse gibt es auch drei Methoden zum Setzen Anfrage Körpers POST-Methode:
setRequestBody(InputStream body)
setRequestBody(String body)
setRequestBody(NameValuePair[] parametersBody);
Namevaluepair API
Die ersten beiden Methoden sind veraltet. Hat jemand weiß, warum? Denn wenn ich eine XML-Anfrage Körper setzen wollen, Namevaluepair hilft mir nicht.
Hat jemand weiß, eine Abhilfe oder eine Lösung?
Lösung
Die javadoc sagt:
Veraltet. Verwendung setRequestEntity (RequestEntity)
hat RequestEntity vielen Implementierer, nämlich:
ByteArrayRequestEntity, FileRequestEntity, InputStreamRequestEntity, MultipartRequestEntity, StringRequestEntity
Verwenden Sie die eine, die zu Ihnen passt:
- , wenn Ihr xml in einem
String
ist, verwenden Sie dieStringRequestEntity
- , wenn es in einer Datei ist, verwenden Sie die
FileRequestEntity
und so weiter.
Andere Tipps
Ja, so zum Beispiel:
post.setRequestEntity( new StringRequestEntity( xml ) );
statt
post.setRequestBody( xml );
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow