服务器在post请求中从客户机接收一些数据。为了发送数据,我使用smth如下:
HttpPost post = new HttpPost(_config.url);
MultipartEntity entity = new MultipartEntity();
for (Entry<String, ContentBody> e : params.entrySet()) {
entity.addPart(e.getKey(), e.getValue());
}
post.setEntity(entity);
当服务器接受请求时,数据存储在请求体中。如果将其读取为char数组并将其转换为string,则可以看到以下信息:
--ltiKmQX6YRvytGyyKS_F3Zz__tVbvbQktQV
Content-Disposition: form-data; name="file"; filename="art21.jpg.0"
Content-Type: application/octet-stream
Content-Transfer-Encoding: binary
ÿØÿàJFIFHHÿÛC
2!!22222222222222222222222222222222222222222222222222ÿOX"ÿÄ
但是,正如您所看到的,请求包含几个参数:filename和file。如何从请求主体获取这些参数?
1条答案
按热度按时间6qfn3psc1#
最终找到解决方案:
要从post body获取数据二进制数据,我使用来自apache的servletfileupload: