Android 机器人空间中的处理错误
我是机器人世界的新手,在处理错误请求时遇到了问题。在onRequestFailure方法中,有没有一种方法可以从错误请求访问响应主体?如果不是,你们是怎么做的Android 机器人空间中的处理错误,android,error-handling,robospice,Android,Error Handling,Robospice,我是机器人世界的新手,在处理错误请求时遇到了问题。在onRequestFailure方法中,有没有一种方法可以从错误请求访问响应主体?如果不是,你们是怎么做的 private class RequestListener implements RequestListener<Object> { @Override public void onRequestFailure(SpiceException e) { } @Override publ
private class RequestListener implements RequestListener<Object> {
@Override
public void onRequestFailure(SpiceException e) {
}
@Override
public void onRequestSuccess(Object response) {
}
}
私有类RequestListener实现RequestListener{
@凌驾
公共void onRequestFailure(SPICE例外){
}
@凌驾
public void onRequestSuccess(对象响应){
}
}
有人建议我应该在Spice请求中进行错误检查。有什么建议吗
@Override
public SubscriptionsContainer loadDataFromNetwork() {
ResponseEntity<SubscriptionsContainer> response = null;
try {
response = getRestTemplate().exchange(/*your request data*/);
} catch (HttpClientErrorException e) {
String responsebody = e.getResponseBodyAsString();
}
}
@覆盖
公共订阅容器loadDataFromNetwork(){
ResponseEntity response=null;
试试{
response=getrestemplate().exchange(/*您的请求数据*/);
}捕获(HttpClientErrorE异常){
字符串responsebody=e.getResponseBodyAsString();
}
}
如果您从loadDataFromNetwork()
抛出任何异常,它将被包装为SpiceException
,并作为其参数传递给onRequestFailure()
因此,您应该检查您的ResponseEntity
,以了解您期望的条件,并在未满足这些条件时抛出异常。
另一方面,如果您的restemplate.exchange
调用抛出异常,您也可以处理它(如示例中所示)或让它被抛出(因此它将在主线程上通过onRequestFailure()
报告)