javascript - 用于重试失败调用和取消先前调用的 javascript 模式
问题描述
我有一个基于浏览器的 Javascript 应用程序(它是一个 Vue 应用程序,但不一定相关),当状态发生变化时它会调用服务器。如果呼叫失败,我会使用指数退避重试该呼叫。如果调用失败,并且浏览器中的状态更改导致第二次调用,那么第二次调用对服务器的更新可能会被第一次调用的重试覆盖。
这一定是一个常见问题,但我似乎找不到任何示例或插件来处理这个问题。我目前正在使用 Axios,但在选择上很灵活。
任何人都可以指出一个处理这个问题的简单例子吗?
提前致谢!
解决方案
在 RxJS 中,您可以使用将取消先前请求的switchMap
运算符以及一些用于增量退避(或您自己的退避实施)的库
推荐阅读
- python - 从py到exe的加密程序
- asp.net - ASP.Net Core 2 ServiceProviderOptions.ValidateScopes 属性
- django - Django Rest Framework + Postman + JSON 解析错误
- python - 从新写入的文件中读取的 Python 在模块中不起作用
- c# - Unity - 四元数最大值始终为“1.0”,最小值始终为“-1.0”
- vba - 遍历单元格以更改单元格颜色太慢
- c# - Unity 3d Admob 仅显示测试广告
- java - 如何在 OpenIMAJ 中使用自定义字体
- mysql - 使用 Knex 通过 Waterline/Sails 进行迁移
- python - 如何限制工作人员在特定队列中执行任务?[芹菜][蟒蛇]