多部分帖子上传图片 - 设置传输编码,为每个部分设置标题

时间:2011-05-03 21:15:50

标签: image upload multipart transfer-encoding

使用java,我需要对Constant Contacts api执行多部分表单请求以上传图像。 我需要根据他们的规范创建一个用于描述文件的部分,第二部分需要是文件本身。不是问题。问题是正确构建httppost。 下面是相关代码的摘录:

MultipartEntity entity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE, null, null); entity.addPart("Body", new StringBody(content,"application/atom+xml",Charset.forName( "UTF-8" ))); entity.addPart("File", new FileBody (new File("C:\temp\removeRed.gif"), "image/gif"));
httppost.setEntity(entity); HttpResponse response = httpclient.execute(httppost); return response;

我总是收到404回复。我知道我有一个有效的身份验证连接,我发布的链接是正确的。 他们的规范说第一部分内容类型头必须设置为application / atom + xml。他们给出的另一个规范是第二部分,即文件,transfer-encoding必须设置为二进制。 有人可以为每个“部分”如何正确设置标题,传输编码等提供一些说明 任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

entity.addPart("Body", 
               new StringBody(stringbufferObject,Charset.forName( "UTF-8" ))); 

如果你在StringBuffer

中使用了一些特殊字符,它也必须在android中设置