Django REST Swagger 使用 permission_classes=[IsAuthenticated] 隐藏 ModelViewSet

标签 django django-rest-framework swagger django-rest-swagger

我用了Django REST Swagger在我的 Django 项目中。它能够显示所有没有 View 的 URL permission_classes = [IsAuthenticated] .使用 permission_classes = [IsAuthenticated] 查看不显示在 list-api 中。

这是一个例子:

class EquipmentCategoryViewSet(ResponseMixin, viewsets.ModelViewSet):
    queryset = EquipmentCategory.objects.all()
    serializer_class = EquipmentCategorySerializer
    permission_classes = [IsAuthenticated]

如果我删除 permission_classes = [IsAuthenticated] ,它显示在 swagger list-api 中。 我将 swagger 降级为 2.1.2,然后单击授权并传递了 token 。

奇怪的是我的值中有一个前缀“Token”。当我使用 Token<tokenvalue> 登录时登录失败。但是当我通过 <tokenvalue>它已通过身份验证,但未显示带有 isAuthenticated 的 View 。

请建议应该如何显示添加了 isAuthenticated 的 View 。

最佳答案

在文档 API 的右上角有一个用于授权或登录的选项。请在其中提供有效的 token 或登录。这将列出其他端点。

使用 swagger 2.1.2。

The latest django swagger version 2.2 has some issue with authorization. Refer: https://github.com/marcgibbons/django-rest-swagger/issues/762

关于Django REST Swagger 使用 permission_classes=[IsAuthenticated] 隐藏 ModelViewSet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52738232/

相关文章:

django - 已保存查询集的 Python/Django 递归问题

python - Django admin - 添加一个自定义链接,在特定字段旁边的弹出窗口中运行一个函数?

javascript - Django 休息 : AJAX Post is not working, 400 响应

python - 枪兽错误 14 : source: not found NGINX

python - Django Rest Framework - 如何路由到函数 View

python - Django:重写抽象模型的 save() 函数

python - 使用 Pinax 的最大好处是什么?

c# - Swagger 和 ServiceStack 4.0

c# - Swagger C# 枚举生成 - 底层 int 值与原始枚举不匹配

node.js - 我可以为 REST api 中的不同方法编写相同的路径名吗?