0
最近我注意到,當我嘗試使用HttpPost的圖像上傳到我的服務器我得到這個錯誤,我在Eclipse中使用的代碼是這樣的:500內部服務器錯誤的Android HttpPost文件上傳
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,它一直工作到現在,但他們可能更新了一些東西,所以我的代碼不再兼容?如果我在我的電腦上將服務器更改爲本地服務器,則它可以正常工作,但我只會在主機上發生錯誤。有人知道可能是錯的嗎?我確實試圖嗅探我的應用程序,看看它發送的是什麼,並將其與瀏覽器(firefox)進行比較,數據看起來有點不同,並且似乎以不同的方式發送(請注意,文件上傳在瀏覽器中正常工作,只是不能從我的Android應用程序工作)。
這是它的外觀時,它是從我的應用程序發送這樣的: http://justpaste.it/mi11
這是它的外觀時,它是從一個瀏覽器發送像(Firefox和它工作正常): http://justpaste.it/mi1c
謝謝!
結果發現LiteSpeed服務器存在一個錯誤,並且已經修復,所以現在一切正常。謝謝! – eXistenZ