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

时间:2016-08-09 20:40:04

标签: javascript angularjs rest

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

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

1 个答案:

答案 0 :(得分:1)

处理这些案例的最佳方法是按版本推出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

这样,您可以保持代码的有序性,同时仍然支持旧客户。