【发布时间】:2015-10-11 14:34:09
【问题描述】:
最近我注意到当我尝试使用 HttpPost 将图像上传到我的服务器时出现此错误,我在 Eclipse 中使用的代码是这样的:
HttpPost httpPost = new HttpPost((String) params[0]);
Uri uri = (Uri) params[2];
String fileName = getFileName(uri);
if (fileName == null) fileName = "image";
InputStream inputStream = getContentResolver().openInputStream(uri);
HttpEntity mpEntity = MultipartEntityBuilder.create().addPart("place", new StringBody((String) params[3])).addBinaryBody("appuploadfile", inputStream, ContentType.create("image"), fileName).build();
httpPost.setEntity(mpEntity);
httpPost.setHeader("User-Agent", userAgent);
httpPost.setHeader("Cookie", cookie);
httpResponse = httpclient.execute(httpPost);
inputStream.close();
我的主机正在使用 LiteSpeed,它一直工作到现在,但他们可能更新了一些东西,所以我的代码不再兼容?如果我将服务器更改为我 PC 上的本地服务器,它可以完美运行,我只会收到主机错误。有谁知道可能出了什么问题?我确实尝试对我的应用程序进行数据包嗅探以查看它发送的确切内容,并将其与浏览器(firefox)进行比较,数据看起来有点不同,并且似乎发送方式不同(请注意,文件上传可以从浏览器正常工作,它只是在我的 android 应用程序中不再工作)。
这是从我的应用发送时的样子: http://justpaste.it/mi11
这是从浏览器发送时的样子(firefox,它工作正常): http://justpaste.it/mi1c
谢谢!
【问题讨论】:
标签: java android eclipse http http-post