我正在使用 Apache Commons HttpClient PostMethod 3.1。
在 PostMethod 类中也有三种方法可以设置 POST 方法的请求体:
setRequestBody(InputStream body)
setRequestBody(String body)
setRequestBody(NameValuePair[] parametersBody);
NameValuePair接口(interface)
前两种方法已弃用。有人知道为什么吗?因为如果我想将 XML 放到请求正文中,NameValuePair 对我没有帮助。
有人知道解决方法或解决方案吗?
最佳答案
javadoc 说:
Deprecated. use setRequestEntity(RequestEntity)
RequestEntity 的实现者很多,分别是:
ByteArrayRequestEntity, FileRequestEntity, InputStreamRequestEntity, MultipartRequestEntity, StringRequestEntity
选择适合你的:
- 如果您的 xml 在
String
中,请使用StringRequestEntity
- 如果它在文件中,请使用
FileRequestEntity
等等。
关于java - 不推荐使用 PostMethod setRequestBody(String) - 为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2092474/