我有一个基于浏览器的Javascript应用程序(这是Vue应用程序,但不一定相关),可以在状态更改时向服务器发出调用。如果呼叫失败,我将以指数补偿重试该呼叫。如果呼叫失败,并且浏览器中状态的后续更改导致第二次呼叫,则稍后可以通过重试第一次呼叫来覆盖第二次对服务器的更新。
这肯定是一个常见问题,但是我似乎找不到任何示例或插件来处理此问题。我目前使用的是Axios,但选择时比较灵活。
有人能指出我的例子吗?
谢谢!
答案 0 :(得分:3)
在RxJS中,您可以使用switchMap
operator来取消先前的请求以及some library for incremental backoff(或您自己的退避限制)