Postmethod setRequestbody (string) depreciado - por quê?
-
21-09-2019 - |
Pergunta
Estou usando o Apache Commons HttpClient Postmethod 3.1.
Na classe Post -Method, também existem três métodos para definir o órgão de solicitação do Post Method:
setRequestBody(InputStream body)
setRequestBody(String body)
setRequestBody(NameValuePair[] parametersBody);
NameValuepair API
Os dois primeiros métodos são preteridos. Alguém sabe por quê? Porque se eu quiser colocar um XML para solicitar o corpo, o NameValuepair não me ajuda.
Alguém conhece uma solução alternativa ou uma solução?
Solução
O javadoc diz:
Descontinuada. Use SetRequestentity (Requestentity)
O requestentity tem muitos implementadores, a saber:
BytearrayRequestentity, filerequestentity, inputStreamRequestentity, multipartrecestentity, stringRequestentity
Use aquele que combina com você:
- Se o seu XML estiver em um
String
, use oStringRequestEntity
- Se estiver em um arquivo, use o
FileRequestEntity
e assim por diante.
Outras dicas
Sim, por exemplo,
post.setRequestEntity( new StringRequestEntity( xml ) );
ao invés de
post.setRequestBody( xml );
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow