后端api 如何实现手机app restapi接口 多版本兼容?
server.route({
method: 'POST',
path: '/login',
handler: (request, h) => {
balaba 。。。
return 'xxx';
}
});
旧版本的app用的api 接口升级了增加了新的功能(比如原来是账号密码登录,现在用手机号,密码,验证码登录),但是客户并没有下载新的apk , 如果服务端要同时兼容这些客户端 一般是怎么处理的?
6 回复
所以在 resful 设计上就要做好版本管理.
[POST] /api/v1/login
[POST] /api/v2/auth/signin
v1 和 v2 路径可以完全不一样,同样的功能。这样做到 2 个版本同时存在。
即便用户不更新 App,还在用旧的 API 也没事。
所以,还在坚持用 /api/login
这种不区分版本号的,就是在挖坑。就是不知道最后谁来填
@axetroy 没错,加个版本号就解决了
来自✨ Node.js开源项目精选✨
建议将版本放到header里做区分。
@axetroy 如果有功能没有变化的api 在更新的版本里是不是都把原来的代码复制一遍? 因为版本变更不是所有的api都更新一遍,这个是根据需求来实现的
复制一遍这个也没什么难啊. v1一个目录, 然后复制出来改成 v2
@yakczh 没有变化的api用宽松路由匹配,/:version 这样技能匹配1.0 又能匹配2.0