3

我想知道控制移动应用 API 版本的最佳实践是什么。

要求

  • 如果我更改数据库中的某些内容,则应用程序的先前版本不应该受到影响。
  • 目前我正在做...
path('v1/auth/', include('authentication.urls')),
path('v2/auth/', include('authentication.urls2')), # Example
path('v1/api/', include('contentstudio.urls')),
4

2 回答 2

3

Django REST Framework 支持许多不同的 api 版本控制方法。查看文档以找到最适合您的文档。

根据文档,该AcceptHeaderVersioning方法“通常被认为是最佳实践”。IE。您将版本放在 Accept 标头中,如下所示:

Accept: application/json; version=1.0

使用这些方法中的任何一种,您都可以request.version在视图中访问以确定不同版本的行为。

于 2021-05-18T13:27:33.650 回答
0

AcceptHeaderVersioning 是最好的方法,但是当您有多个版本时,它可能看起来很复杂。我选择命名空间是因为它很容易实现。你可以在这里看到一个例子:来自 github 的示例

您还可以将设置文档添加到 settings.py 以更好地配置版本控制

于 2022-02-22T09:39:57.503 回答