gpt4 book ai didi

android - 发生异常时的 Robospice 缓存

转载 作者:行者123 更新时间:2023-11-30 02:07:38 25 4
gpt4 key购买 nike

我不想达到下一个目标。

取决于json 内容desside put 或不将数据放入Robospice Cache。有时从服务器返回的数据无效。例如,我们的授权 token 关闭时间。所以我们不应该缓存这个响应。

但是我找不到可以帮助我解决这个问题的API。这是我现在使用请求的方式:

getSpiceManager().execute(getRequestCreator().getAllCategories(), getRequestCreator().getLastCacheKey(),
DurationInMillis.ONE_MINUTE * 120, new JSONCategoryListener(mCategories));

所以实际响应是正常的(状态 200),但是 json 内容告诉我异常。

最佳答案

那么,你想得到什么?这是服务器的正确行为。服务器返回200,表示请求成功。但它不能保证,这不是服务器上“业务逻辑”的一些内部错误,例如无效数据或其他任何错误。

已编辑

也许您可以使用您的自定义错误处理程序:

class MyErrorHandler implements ErrorHandler {
@Override public Throwable handleError(RetrofitError cause) {
//check response on errors
}
}

在 createRestAdapterBuilder() 中:

new RestAdapter.Builder()..setErrorHandler(new MyErrorHandler());

已编辑 2

您可以在您的robospice 服务方法中实现putDataInCache(Object cacheKey, T data),并在您的监听器中检查内容中的错误,如果没有错误则将其添加到缓存中,或从缓存中移除

关于android - 发生异常时的 Robospice 缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30453682/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com