DRF版本控制组件

Posted staff

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DRF版本控制组件相关的知识,希望对你有一定的参考价值。

为什么要进行版本控制?

新旧版本的接口都要维护,发请求的时候带上版本号会返回不同的结果,例如bootstrap2.0 、3.0等都有文档

版本控制组件源码---

as_view调用View的dispatch方法,dispatch被重写了,所以调用APIView的dispatch方法

self是DemoView的实例化对象

技术图片

 

 把版本信息放在了request.version和request.versioning_scheme中

技术图片

 

 determine_version返回元祖(version, scheme)

技术图片

 

 

技术图片

 

 request.scheme是配置文件中"DEFAULT_VERSIONING_CLASS"的实例化对象

request.version是"DEFAULT_VERSIONING_CLASS"类的determine_version方法的返回值

所以,"DEFAULT_VERSIONING_CLASS"类必须要有determine_version方法。

以上是关于DRF版本控制组件的主要内容,如果未能解决你的问题,请参考以下文章

DRF--路由组件和版本控制

DRF版本控制

drf版本控制 django缓存

DRF 版本 认证

DRF 版本 认证

DRF 版本 认证