【问题标题】:500 Internal server error Android HttpPost file upload500 内部服务器错误 Android HttpPost 文件上传
【发布时间】: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


    【解决方案1】:

    HTTP 错误 500 表示内部服务器错误。也就是说,错误在服务器中,而不是在您的应用程序中。您需要检查服务器的日志以查看导致它的原因并在那里修复它。

    【讨论】:

    • 事实证明,LiteSpeed 服务器存在一个错误,并且已经修复,所以现在一切正常。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2015-04-10
    • 1970-01-01
    • 1970-01-01
    • 2014-01-11
    • 1970-01-01
    • 2018-03-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多