我用了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/