使用DefaultHttpClient发送大文件失败

时间:2012-05-23 12:17:16

标签: java android networking connection android-networking

我尝试使用httpput将大文件传输到服务器。 但是,我无法传输大文件。我收到IOException并显示错误消息:"系统调用期间I / O错误,连接由同行重置"。 我使用的代码是:

    // create authenticate client
    DefaultHttpClient client = new DefaultHttpClient(httpParameters);

    // create HTTP put with the file
    HttpPut httpPut = new HttpPut(url);
    final File recordingFile = new File(mDir, mName);
    FileEntity entity = new FileEntity(recordingFile, "binary/octet-stream");
    entity.setChunked(true);
    httpPut.setEntity(entity);
    httpPut.addHeader("Connection", "Keep-Alive");
    httpPut.addHeader("Content-Type", "application/zip");

    // Execute
    HttpResponse res = client.execute(httpPut);
    int statusCode = res.getStatusLine().getStatusCode();

2 个答案:

答案 0 :(得分:0)

通过http发送文件时,请记住您的服务器http对文件的维度有最大限制。

如果我没错,默认值为2MB:但你可以在服务器的配置文件(PHP)上更改它。

要检查的文件是php.ini。

打开文件并搜索“upload_max_filesize = 2M”:只需使用项目所需的维度更改2即可保存。

这就是全部!

答案 1 :(得分:-1)

我认为您需要更改web.config文件中的最大请求大小。

<httpRuntime executionTimeout="110" maxRequestLength="8192" />
相关问题