Retrofit socket timeout exception while uploading larger files using multipart(使用Multipart上传较大文件时出现改装套接字超时异常)
问题描述
我在使用REVERFIT 2.0.2库和okhttp 2.3.0时遇到套接字超时异常的问题。我正在尝试上载它正在成功上载的大小在500KB到1.5MB之间的图像文件。但是当我尝试上载大于5MB的视频文件时,我收到此异常。
我使用httpClient进行连接设置,如下所示。
public static OkHttpClient okHttpClient = new OkHttpClient.Builder()
.connectTimeout(0, TimeUnit.SECONDS)
.writeTimeout(0, TimeUnit.SECONDS)
.readTimeout(0, TimeUnit.SECONDS)
.build();
请建议我在没有此问题的情况下上载较大的文件。提前谢谢
推荐答案
您可以按如下方式提供以秒为单位的时间
公共类ApiClient{
public static final String BASE_URL = "your_url";
public static Retrofit retrofit = null;
public static Retrofit getApiClient() {
if (retrofit == null) {
OkHttpClient okHttpClient = new OkHttpClient().newBuilder()
.connectTimeout(60, TimeUnit.SECONDS)
.readTimeout(60, TimeUnit.SECONDS)
.writeTimeout(60, TimeUnit.SECONDS)
.build();
return new Retrofit.Builder()
.baseUrl(BASE_URL)
.client(okHttpClient)
.addConverterFactory(GsonConverterFactory.create())
.build();
}
return retrofit;
}
}
我已经给了60秒
这篇关于使用Multipart上传较大文件时出现改装套接字超时异常的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!