error=unexpected end of stream on Connection{my.114la.com:80, proxy=DIRECT@ hostAddress=my.114la.com

okhttp3中有时候后会遇到请求的时候出现

error=unexpected end of stream on Connection{my.114la.com:80, proxy=DIRECT@ hostAddress=my.114la.com/39.107.146.250:80 cipherSuite=none protocol=http/1.1}

错误

解决方案

1.给okhttp添加header 拦截器中加入这个 addHeader("Connection","close")

2..retryOnConnectionFailure(false) 删除或改为true

3.报错的最大原因之一是URL不合法,可能你携带的参数有不合法的符号,例如携带了时间参数:
String url = "http://test/request?id=101&time=2018-8-29 12:12:00";

因为时间 2018-8-29 12:12:00 中间有空格,请求时无法识别那个空格符号,所以你要做的是将时间进行URLEncoder编码:
    String time = URLEncoder.encode("2018-8-29 12:12:00", "UTF-8");
    String url = "http://test/request?id=101&time=" + time;

 

安卓开发交流群:安卓帮595856941

你可能感兴趣的:(开发中的异常处理)