添加token

This commit is contained in:
jlj 2025-05-20 16:39:08 +08:00
parent db697fae26
commit d74a8fddf8
4 changed files with 15 additions and 35 deletions

2
.gitignore vendored
View File

@ -54,7 +54,7 @@ cover/
*.pot
# Django stuff:
*.log
local_settings.py
db.sqlite3
db.sqlite3-journal

View File

@ -2,6 +2,8 @@ from django.shortcuts import render, get_object_or_404
from rest_framework import viewsets, status
from rest_framework.decorators import action
from rest_framework.response import Response
from rest_framework.permissions import IsAuthenticated
from apps.user.authentication import CustomTokenAuthentication
import logging
from .models import Brand, Product, Campaign, BrandChatSession
@ -26,9 +28,12 @@ def api_response(code=200, message="成功", data=None):
})
class BrandViewSet(viewsets.ModelViewSet):
"""品牌API视图集"""
queryset = Brand.objects.all()
serializer_class = BrandSerializer
authentication_classes = [CustomTokenAuthentication]
permission_classes = [IsAuthenticated]
def get_serializer_class(self):
if self.action == 'retrieve':
@ -40,13 +45,6 @@ class BrandViewSet(viewsets.ModelViewSet):
serializer = self.get_serializer(queryset, many=True)
return api_response(data=serializer.data)
def create(self, request, *args, **kwargs):
serializer = self.get_serializer(data=request.data)
if serializer.is_valid():
self.perform_create(serializer)
return api_response(data=serializer.data)
return api_response(code=400, message="创建失败", data=serializer.errors)
def retrieve(self, request, *args, **kwargs):
instance = self.get_object()
serializer = self.get_serializer(instance)
@ -93,19 +91,14 @@ class ProductViewSet(viewsets.ModelViewSet):
"""产品API视图集"""
queryset = Product.objects.filter(is_active=True)
serializer_class = ProductSerializer
authentication_classes = [CustomTokenAuthentication]
permission_classes = [IsAuthenticated]
def list(self, request, *args, **kwargs):
queryset = self.filter_queryset(self.get_queryset())
serializer = self.get_serializer(queryset, many=True)
return api_response(data=serializer.data)
def create(self, request, *args, **kwargs):
serializer = self.get_serializer(data=request.data)
if serializer.is_valid():
self.perform_create(serializer)
return api_response(data=serializer.data)
return api_response(code=400, message="创建失败", data=serializer.errors)
def retrieve(self, request, *args, **kwargs):
instance = self.get_object()
serializer = self.get_serializer(instance)
@ -168,19 +161,14 @@ class CampaignViewSet(viewsets.ModelViewSet):
"""活动API视图集"""
queryset = Campaign.objects.filter(is_active=True)
serializer_class = CampaignSerializer
authentication_classes = [CustomTokenAuthentication]
permission_classes = [IsAuthenticated]
def list(self, request, *args, **kwargs):
queryset = self.filter_queryset(self.get_queryset())
serializer = self.get_serializer(queryset, many=True)
return api_response(data=serializer.data)
def create(self, request, *args, **kwargs):
serializer = self.get_serializer(data=request.data)
if serializer.is_valid():
self.perform_create(serializer)
return api_response(data=serializer.data)
return api_response(code=400, message="创建失败", data=serializer.errors)
def retrieve(self, request, *args, **kwargs):
instance = self.get_object()
serializer = self.get_serializer(instance)
@ -372,19 +360,14 @@ class BrandChatSessionViewSet(viewsets.ModelViewSet):
"""品牌聊天会话API视图集"""
queryset = BrandChatSession.objects.filter(is_active=True)
serializer_class = BrandChatSessionSerializer
authentication_classes = [CustomTokenAuthentication]
permission_classes = [IsAuthenticated]
def list(self, request, *args, **kwargs):
queryset = self.filter_queryset(self.get_queryset())
serializer = self.get_serializer(queryset, many=True)
return api_response(data=serializer.data)
def create(self, request, *args, **kwargs):
serializer = self.get_serializer(data=request.data)
if serializer.is_valid():
self.perform_create(serializer)
return api_response(data=serializer.data)
return api_response(code=400, message="创建失败", data=serializer.errors)
def retrieve(self, request, *args, **kwargs):
instance = self.get_object()
serializer = self.get_serializer(instance)

View File

@ -202,12 +202,9 @@ AUTH_USER_MODEL = 'user.User'
# REST Framework 设置
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': (
'apps.user.authentication.CustomTokenAuthentication',
),
'UNAUTHENTICATED_USER': None,
'DEFAULT_PERMISSION_CLASSES': [], # 默认不需要任何权限
'DEFAULT_AUTHENTICATION_CLASSES': [] # 默认不需要任何认证
'DEFAULT_AUTHENTICATION_CLASSES': [], # 默认不需要认证
'DEFAULT_PERMISSION_CLASSES': [], # 默认不需要权限
'UNAUTHENTICATED_USER': None
}
# JWT 设置

0
logs/app.log Normal file
View File