Javascript BreezeJS中央错误处理程序和自动重试

Javascript BreezeJS中央错误处理程序和自动重试,javascript,breeze,Javascript,Breeze,有没有办法让Breeze JS在通信失败时自动重试?理想情况下,我希望在响应中添加一个中心事件处理程序,例如401,我可以提示用户重新登录,然后重试请求,或者如果它的一般连接问题允许用户选择重试或取消 我可以在每个请求位置添加代码来处理此问题,但这需要大量工作,理想情况下,这需要在一个中心位置。您可以将重试逻辑放在一个中 从breeze文档: Stock Breeze AJAX适配器提供了一个扩展点,requestInterceptor。在适配器调用实际的AJAX组件之前,此拦截器让开发人员最后

有没有办法让Breeze JS在通信失败时自动重试?理想情况下,我希望在响应中添加一个中心事件处理程序,例如401,我可以提示用户重新登录,然后重试请求,或者如果它的一般连接问题允许用户选择重试或取消


我可以在每个请求位置添加代码来处理此问题,但这需要大量工作,理想情况下,这需要在一个中心位置。

您可以将重试逻辑放在一个

从breeze文档:

Stock Breeze AJAX适配器提供了一个扩展点,requestInterceptor。在适配器调用实际的AJAX组件之前,此拦截器让开发人员最后一次查看每个请求。
拦截器接受单个参数requestInfo并返回 没什么

您的请求拦截器可以包装
错误
回调,并添加重试逻辑和401处理


如果您在jQuery中使用breeze,您可以在较低的级别上使用jQuery。

如果您使用Angular,我认为您也可以为此目的使用us$http拦截器。下面是该方法的一个实现:(注意:我自己还没有尝试过)。这样的话,你根本不需要涉及微风。
var requestInfo = {
        adapter: this,      // this AJAX adapter
        config: ...,        // the configuration object passed to the wrapped AJAX component
        dsaConfig: config,  // the config arg from the calling Breeze DataServiceAdapter
        success: successFn, // adapter's success callback
        error: errorFn      // adapter's error callback
}