使用Retrofit加okhttp,如果返回失败的话,callback中response中不能看到失败的网页源码
为此我们有两种方法,通过okhttp拦截器或者retrofit自定义ResponseConvertFactory实现
public class ApiUtil {
private static final int DEFAULT_TIMEOUT = 5;
private Retrofit retrofit;
private EnergySavingService energySavingService;
private static final boolean DEBUG = true;
private ApiUtil(){
OkHttpClient.Builder builder = new OkHttpClient.Builder();
// 添加自定义的拦截器
builder.addInterceptor(new ResponseInterceptor());
builder.connectTimeout(DEFAULT_TIMEOUT, TimeUnit.SECONDS);
builder.cookieJar(new CookieJar() {
private final HashMap<String, List<Cookie>> cookieStore = new HashMap<>();
@Override
public void saveFromResponse(HttpUrl