python-使用Accept标头对DeliciousPie Api进行版本控制
作者:互联网
我并不是要发动一场宗教战争,但是我个人真的不喜欢资源URL中的api版本信息.我认为最好的方法是通过资源的Accept标头或向查询字符串中添加?version = 2.如果您对此主题感到好奇.关于该主题的StackOverflow上有很多不错的(热情的)帖子.这是一个很好的thread here.还有恕我直言,这是Steve Klabnik撰写的一个不错的博客文章here.再说一次,这些只是我的看法,我并不想在这个话题上再次创建话题.
我目前正在寻找Django程序包来帮助创建RESTful API.经过一番阅读后,TastyPie似乎拥有了我想要/需要的大部分内容,并且得到了很好的支持(并且确实有不错的文档).我只是想知道是否有一种方法可以实现不同的版本控制方案?还有其他人这样做吗?是否有另一个软件包可能更适合我的需要?
解决方法:
是的,您可以使用Accept标头或任何其他方法来对API进行版本控制,并以不特定于您所使用的Django API包的方式执行此操作.一种简单的方法是添加一些中间件来检查相关请求的标头,然后根据指定的版本加载适当的URL conf.
github上有几个使用URL routing middleware的简单应用,您可以对其进行自定义以满足您的需求.
另外,Tastypie很棒,在同时使用两者之后,我强烈推荐在活塞上使用.
标签:rest,tastypie,python,django 来源: https://codeday.me/bug/20191101/1985204.html