【发布时间】:2016-10-02 00:52:27
【问题描述】:
我已按照此link 刷新访问令牌。在将 Authenticator 添加到 okHttp 时,从改造回调 onFailure 方法得到 Unexpected end of stream on okhttp3 错误
public class TokenAuthenticator implements Authenticator {
AccessTokenRefreshModel accessTokenRefreshModel = null;
@Override
public Request authenticate(Route route, Response response) throws IOException {
Call<UserLogin> call = iService.refreshAccessToken(BuildConfig.CLIENT_ID, refreshToken);
UserLogin userLogin = call.execute().body();
// Add new header to rejected request and retry it
return response.request().newBuilder()
.header(AUTHORIZATION, userLogin.getAccessToken())
.build();
}
}
Call<User> call = iService.createuser(user);
call.enqueue(new Callback<User>() {
@Override
public void onResponse(Call<User> call, Response<User> response) {
}
@Override
public void onFailure(Call<User> call, Throwable t) {
//**Unexpected end of stream on okhttp3**
}
【问题讨论】:
-
你在使用日志拦截器吗?
-
@Debanjan 是的,我正在使用日志拦截器。
-
移除日志拦截器并检查一次。