修改文件上传socket超时和异常
Modify File Upload Socket Timeout and Exception
在我的 android 应用程序中,当我想上传大小为 2MB 或更大的文件时,它会抛出此异常:
java.net.SocketTimeoutException: timeout at java.lang.Thread.run(Thread.java:841)
caused by: java.net.SocketException: Socket is closed at
org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.checkOpen(OpenSSLSocketImpl.java:237) at
org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.access0(OpenSSLSocketImpl.java:63) at
org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl$SSLOutputStream.write(OpenSSLSocketImpl.java:723) at
okio.Okio.write(Okio.java:80) at
okio.AsyncTimeout.write(AsyncTimeout.java:155)
上传小于 2MB 没有问题,一切正常。
如何修改文件上传socket超时和异常?
好的,对于像我这样可能会卡在这个问题上的人,我必须说这个异常有一些原因,比如连接弱、wifi 信号差、读写和连接超时等...
检查所有情况,如果没有工作,您可以使用以下行:
我通过添加这行代码结束了这个:
OkHttpClient.setRetryOnConnectionFailure(true);
并设置更多超时时间
OkHttpClient.setConnectTimeout(10, TimeUnit.MINUTES);
OkHttpClient.setReadTimeout(10, TimeUnit.MINUTES);
OkHttpClient.setWriteTimeout(10, TimeUnit.MINUTES);
我想知道设置这个10分钟会不会有问题?
如果有人能告诉我,我将不胜感激
在我的 android 应用程序中,当我想上传大小为 2MB 或更大的文件时,它会抛出此异常:
java.net.SocketTimeoutException: timeout at java.lang.Thread.run(Thread.java:841)
caused by: java.net.SocketException: Socket is closed at
org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.checkOpen(OpenSSLSocketImpl.java:237) at
org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.access0(OpenSSLSocketImpl.java:63) at
org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl$SSLOutputStream.write(OpenSSLSocketImpl.java:723) at
okio.Okio.write(Okio.java:80) at
okio.AsyncTimeout.write(AsyncTimeout.java:155)
上传小于 2MB 没有问题,一切正常。
如何修改文件上传socket超时和异常?
好的,对于像我这样可能会卡在这个问题上的人,我必须说这个异常有一些原因,比如连接弱、wifi 信号差、读写和连接超时等...
检查所有情况,如果没有工作,您可以使用以下行:
我通过添加这行代码结束了这个:
OkHttpClient.setRetryOnConnectionFailure(true);
并设置更多超时时间
OkHttpClient.setConnectTimeout(10, TimeUnit.MINUTES);
OkHttpClient.setReadTimeout(10, TimeUnit.MINUTES);
OkHttpClient.setWriteTimeout(10, TimeUnit.MINUTES);
我想知道设置这个10分钟会不会有问题? 如果有人能告诉我,我将不胜感激