jeasonlzy / okhttp-OkGo

OkGo - 3.0 震撼来袭,该库是基于 Http 协议,封装了 OkHttp 的网络请求框架,比 Retrofit 更简单易用,支持 RxJava,RxJava2,支持自定义缓存,支持批量断点下载管理和批量上传管理功能
Apache License 2.0
10.59k stars 2.55k forks source link

大文件上传(50M)一波三折还是失败 #846

Open ZS-ZhangsShun opened 5 years ago

ZS-ZhangsShun commented 5 years ago

首先 上传十几兆的小文件是成功的,上传大文件一开始报错: okhttp3.internal.http2.StreamResetException: stream was reset: INTERNAL_ERROR

然后我添加了:builder.protocols(Collections.singletonList(Protocol.HTTP_1_1));

然后继续报错:java.io.EOFException: \n not found: limit=0 content=…

然后我去掉了日志拦截器:

然后继续报错:java.io.EOFException

我的使用代码如下: PostRequest request = OkGo.post(THSVConstant.BASE_SERVER_URL + "tts/pic/uploadv") .tag("upload") .params("file", file,file.getName(),MediaType.parse("application/octet-stream")) .params("session", THSVConstant.SESSION) .params("client", THSVConstant.CLIENT) .params("data", JSON.toJSONString(bean));

初始化的代码如下: OkHttpClient.Builder builder = new OkHttpClient.Builder();

    builder.connectTimeout(10, TimeUnit.SECONDS);
    builder.readTimeout(60, TimeUnit.SECONDS);
    builder.writeTimeout(60, TimeUnit.SECONDS);
    builder.retryOnConnectionFailure(false);

    HttpsUtils.SSLParams sslParams1 = HttpsUtils.getSslSocketFactory();
    builder.sslSocketFactory(sslParams1.sSLSocketFactory, sslParams1.trustManager);

    OkGo.getInstance().init(this)
            .setOkHttpClient(builder.build())
            .setCacheMode(CacheMode.NO_CACHE);

有日志的时候 日志如下: 2019-03-01 08:57:35.178 29968-30511/com.beanji.tonightRebo I/OkGo: --> POST https://mobao.beanji.com/tts/pic/uploadv http/1.1 2019-03-01 08:57:35.178 29968-30511/com.beanji.tonightRebo I/OkGo: Content-Type: multipart/form-data; boundary=677556b0-3f12-48a9-a16d-c9033233af1f 2019-03-01 08:57:35.178 29968-30511/com.beanji.tonightRebo I/OkGo: Content-Length: 52302337 2019-03-01 08:57:35.179 29968-30511/com.beanji.tonightRebo I/OkGo: Accept-Language: zh-CN,zh;q=0.8 2019-03-01 08:57:35.179 29968-30511/com.beanji.tonightRebo I/OkGo: User-Agent: Mozilla/5.0 (Linux; U; Android 8.1.0; zh-cn; Redmi 5 Plus Build/OPM1.171019.019) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 2019-03-01 08:57:35.179 29968-30511/com.beanji.tonightRebo I/OkGo:
2019-03-01 08:57:35.179 29968-30511/com.beanji.tonightRebo I/OkGo: body: maybe [binary body], omitted! 2019-03-01 08:57:35.179 29968-30511/com.beanji.tonightRebo I/OkGo: --> END POST

8210503 commented 5 years ago

我也遇到了这个情况,请问您是怎么处理的呢

ZS-ZhangsShun commented 5 years ago

http传不了大文件的,要么分片,要么压缩,我是视频压缩后上传的。

在 2019-05-07 13:08:55,"Ex_Soldier" notifications@github.com 写道:

我也遇到了这个情况,请问您是怎么处理的呢

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.