javascript - 将 API 更新信息推送到正在运行的客户端的最佳做法是什么?

标签 javascript angularjs rest

假设我有一个 Django REST API 和一个 AngularJS 客户端。假设我更改了 API,以便为客户端实现新功能。
我(几乎)同时将 API 和客户端更改推送到生产环境。新的 API 版本将运行,但可能仍有多个客户端在用户浏览器上运行旧代码。

在浏览器上推送和重新加载代码的通常做法是什么?

最佳答案

处理这些情况的最佳方法是按版本推出 API 更改,就像 Facebook 和 Google 所做的那样。

旧客户端将继续调用已弃用的 api,而新客户端将调用新 api。

注意:在清理旧版本时,您必须让您的客户知道您正在放弃对旧客户端的支持!

例子:

//Old deprecated api
GET /api/v1/users
GET /api/v1/cars

//New api - if logic did not change just redirect to old api
GET /api/v2/users (unchanged) --> redirect to /api/v1/users
GET /api/v2/cars new implementation

这样您就可以保持代码井井有条,同时仍然支持老客户。

关于javascript - 将 API 更新信息推送到正在运行的客户端的最佳做法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38860028/

相关文章:

javascript - 第二次单击时未附加输入

angularjs - 创建只能访问某些页面的子域别名

spring - API 未使用@PostMapping 接收信息,但使用@RequestMapping 是。 Spring Boot、Kotlin、REST API

python - 用于 Django 项目/应用程序的 RESTful API

WCF 剩余错误处理

javascript - C# Web浏览器以编程方式关闭JS确认框

javascript - 页后 2 个计时器 "refresh"

javascript - 如何为 Atom、WhatsApp 等 Electron 应用程序添加安装屏幕?

javascript - Angular JS 中的单元测试 promise

java - 使用 ANGULARJS 从 Jersey Rest api 调用下载/保存文件。文件附有响应 "Content-Disposition"