Django drf-spectacular - 你能排除特定路径吗?
Django drf-spectacular - Can you exclude specific paths?
我们在 urls.py 中有一堆 api 的不同版本,例如
- api/v1
- api/v2
- api/v3
。我们想用 drf-spectacular 实现 swagger,但我们只想公开 api/v3 个端点。
有办法吗?我无法理解文档。
谢谢
解决了。复制了自定义预处理挂钩函数,更改了 pass 语句以过滤端点中不需要的内容,然后在我的预处理挂钩的壮观设置中映射了文件和函数的位置。
这对我有用:
def preprocessing_filter_spec(endpoints):
filtered = []
for (path, path_regex, method, callback) in endpoints:
# Remove all but DRF API endpoints
if path.startswith("/api/"):
filtered.append((path, path_regex, method, callback))
return filtered
在设置中:
"PREPROCESSING_HOOKS": ["common.openapi.preprocessing_filter_spec"],
我们在 urls.py 中有一堆 api 的不同版本,例如
- api/v1
- api/v2
- api/v3
。我们想用 drf-spectacular 实现 swagger,但我们只想公开 api/v3 个端点。
有办法吗?我无法理解文档。
谢谢
解决了。复制了自定义预处理挂钩函数,更改了 pass 语句以过滤端点中不需要的内容,然后在我的预处理挂钩的壮观设置中映射了文件和函数的位置。
这对我有用:
def preprocessing_filter_spec(endpoints):
filtered = []
for (path, path_regex, method, callback) in endpoints:
# Remove all but DRF API endpoints
if path.startswith("/api/"):
filtered.append((path, path_regex, method, callback))
return filtered
在设置中:
"PREPROCESSING_HOOKS": ["common.openapi.preprocessing_filter_spec"],