具有改进的Authenticator,当不能添加访问令牌时不要返回null

时间:2017-09-27 09:12:25

标签: android retrofit okhttp

我正在使用的api因各种原因返回401。不只是我的令牌已经过期了。我不知道如何在通话中返回这些信息。

因此,例如,我可能会得到一个401,因为用户有无效的授权。 我通过

在我的身份验证器中检查这个
   @Override
    public Request authenticate(Route route, Response response) throws IOException {......


String reponsebody = response.body().string();
            if(reponsebody!=null){
                try {
                    JSONObject obj = new JSONObject(reponsebody);
                    if(obj.getString("message").equals("Invalid Grants")){
                        return null;
                    }
                } catch (JSONException e) {
                    e.printStackTrace();
                }
            }

除了我不想只返回" null"这将在我的观察者中触发onError ..我想返回一些我可以用来决定最佳行动方案的内容。

我已经考虑过尝试将响应代码修改为其他内容,但没有运气。有什么想法吗?

0 个答案:

没有答案