Django REST Framework-视图集(三) 每日头条

时间:2023-04-27 07:09:54 来源: 腾讯云


(相关资料图)

视图集的认证和权限

在 Django REST Framework 中,我们可以使用认证(Authentication)和权限(Permission)来控制 API 的访问权限。认证用于验证用户身份,而权限则用于限制用户的操作权限。常用的认证方式包括 Token 认证、Session 认证、Basic 认证等,常用的权限包括 IsAuthenticated、IsAdminUser、AllowAny 等。

要在视图集中使用认证和权限,我们可以分别定义 authentication_classespermission_classes属性。例如,我们可以定义一个名为 BookViewSet的视图集类,并指定它的认证方式为 Token 认证,权限为 IsAuthenticated:

from rest_framework.authentication import TokenAuthenticationfrom rest_framework.permissions import IsAuthenticatedfrom .models import Bookfrom .serializers import BookSerializerclass BookViewSet(viewsets.ModelViewSet):    queryset = Book.objects.all()    serializer_class = BookSerializer    authentication_classes = [TokenAuthentication]    permission_classes = [IsAuthenticated]

在这个例子中,我们使用 authentication_classes属性将认证方式设置为 Token 认证,使用 permission_classes属性将权限设置为 IsAuthenticated。这样,只有经过 Token 认证并被授权的用户才能访问 BookViewSet视图集。

标签:

相关文章

社会面清零后第十天,三问吉林省复工复产怎样了

新华社长春4月23日电 题:社会面清零后第十天,三问吉林省复工复产怎样了 新华社记者段续、张建、赵丹丹...

来源:2022-04-24

青海海北州门源县发生3.9级地震 震源深度10千米

4月23日电 据国家地震台网官方微博消息,中国地震台网正式测定:04月23日22时07分在青海海北州门源县(...

来源:2022-04-24

山西太原万柏林区报告1例无症状感染者 公布行程轨迹

(抗击新冠肺炎)山西太原万柏林区报告1例无症状感染者 公布行程轨迹 太原4月23日电 (记者 李新锁)山西...

来源:2022-04-24

上海战疫:从严从重从快查处食品安全违法行为

(抗击新冠肺炎)上海战疫:从严从重从快查处食品安全违法行为 上海4月23日电 (记者 许婧)近日,上海出现...

来源:2022-04-24

杭州本轮疫情已发现98例阳性感染者 有进一步扩散可能

杭州4月23日电(张煜欢 崔倩娴)23日,记者从杭州市新冠肺炎疫情防控工作新闻发布会上获悉,截至23日18时...

来源:2022-04-24

精彩推送

X 关闭

X 关闭