我们有一个移动应用程序,该应用程序调用REST API来获取要在移动主屏幕上显示的图块列表.身份验证机制是AUTH令牌,通过它我们可以唯一地标识用户.菜单会根据应用程序的版本不断变化.为此,我们有两种方法.
> / api / tilemenus(仅通过身份验证标头,而不是版本)
检索auth标头并在db表中查找应用程序的版本(我们还将用户版本存储在数据库中,并在用户升级应用程序时对其进行更新),并相应地返回数据.
> /api/tilemenus/1.2.2(由于客户端本身知道其版本,因此也要传递auth标头和版本)
在此,不需要数据库查找,因为版本是通过REST请求本身传递的.
哪种方法更好?我认为方法2更好,因为我们可以传递缓存头来为每个版本缓存此API.对于方法1,当用户升级应用程序时,没有隐式方法可以丢弃此缓存.
最佳答案
通常在URI路径中传递API版本(也请检查此question).我建议使用第二个选项,尽管将其重写为/api/1.2.2/tilemenus,它看起来更类似于API在许多流行网站上的运行方式.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。