如果失败,我需要重试发送GWT RPC请求(除了HTTP 200之外的任何响应代码).原因很复杂,所以我不会详细说明.到目前为止,我在同一个地方处理所有请求响应,如下所示:
// We override the RpcRequestBuilder.doSetCallback method and force your service to use it
// With this we can read the response headers if we need to.
((ServiceDefTarget)serviceRPC).setRpcRequestBuilder(new RpcRequestBuilder() {
@Override
protected void doSetCallback(RequestBuilder rb, final RequestCallback callback) {
super.doSetCallback(rb, new RequestCallback() {
@Override
public void onResponseReceived(Request request,
Response response) {
httpResponseOkHandler(callback, request, response);
}
@Override
public void onError(Request request, Throwable exception) {
httpResponseErrorHandler(callback, request, exception);
}
});
}
});
Run Code Online (Sandbox Code Playgroud)
因此,使用httpResponseOkHandler方法,我可以捕获HTTP失败.但是,有没有办法"重新抛出"请求,即重试?我不想存储RPC请求的高级参数,我更愿意使用已经流式传输并准备重新发送的请求内容.
有任何想法吗?
gwt ×1