我在这里使用答案尝试POST
通过数据上传发出请求,但我从服务器端有不寻常的要求.该服务器是一个PHP脚本,需要filename
对Content-Disposition
行,因为它是期待一个文件上传.
Content-Disposition: form-data; name="file"; filename="-"
但是,在客户端,我想发布一个内存缓冲区(在这种情况下是一个String)而不是一个文件,但让服务器处理它就好像它是一个文件上传.
但是,使用StringBody
我无法在行filename
上添加必填字段Content-Disposition
.因此,我试图使用FormBodyPart
,但这只是filename
在一个单独的行.
HttpPost httppost = new HttpPost(url); MultipartEntity entity = new MultipartEntity(); ContentBody body = new StringBody(data, org.apache.http.entity.ContentType.APPLICATION_OCTET_STREAM); FormBodyPart fbp = new FormBodyPart("file", body); fbp.addField("filename", "-"); entity.addPart(fbp); httppost.setEntity(entity);
如果没有先将我写入文件然后再将其读回来,我怎样才能filename
进入该Content-Disposition
行String
?