來源:騰訊云 時間:2023-04-27 02:22:44
【資料圖】
在 Django REST Framework 中,我們可以使用認證(Authentication)和權(quán)限(Permission)來控制 API 的訪問權(quán)限。認證用于驗證用戶身份,而權(quán)限則用于限制用戶的操作權(quán)限。常用的認證方式包括 Token 認證、Session 認證、Basic 認證等,常用的權(quán)限包括 IsAuthenticated、IsAdminUser、AllowAny 等。
要在視圖集中使用認證和權(quán)限,我們可以分別定義 authentication_classes
和 permission_classes
屬性。例如,我們可以定義一個名為 BookViewSet
的視圖集類,并指定它的認證方式為 Token 認證,權(quán)限為 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
屬性將認證方式設(shè)置為 Token 認證,使用 permission_classes
屬性將權(quán)限設(shè)置為 IsAuthenticated。這樣,只有經(jīng)過 Token 認證并被授權(quán)的用戶才能訪問 BookViewSet
視圖集。
標簽:
新開普2022年凈利潤1.12億元 今年一季度虧損額同比收窄 精彩看點
4月26日晚間,新開普披露2022年年報及2023年一季報。2022年,公司實現(xiàn)營業(yè)收入10 7億元...
淄博燒烤IP大熱催生“燒烤貸” 網(wǎng)友:金融產(chǎn)品創(chuàng)新好“卷”,就差辦理“燒烤分期”了
每經(jīng)記者:劉嘉魁每經(jīng)編輯:馬子卿你去淄博吃燒烤了嗎?“小餅小蔥加小爐”這靈魂三件套...
英雄街道_關(guān)于英雄街道的簡介
1、英雄街道,隸屬于吉林省四平市鐵西區(qū),地處鐵西區(qū)西部,東以南郵電街為界與站前街道接...
最新孤獨個性感言句子短句大全
無論是身處學(xué)校還是步入社會,大家都嘗試過寫作吧,借助寫作也可以提高我們的語言組織能...
Django REST Framework-視圖集(三)