django-vue-admin+apifox并解决自动登录问题
·
1.apifox导入swagger文档

这里url填写
打开swagger2后的url就行默认http://127.0.0.1:8000/?format=openapi
2.解决自动登录问题
使用apifox导入swagger后,post请求需求登录才能用,然而django-vue-admin使用的simple-jwt认证,故修改接口文档登录代码。
2.1修改后端代码
# 从这点进去,或全局搜索
path("apiLogin/", ApiLogin.as_view()),
class ApiLogin(APIView):
"""接口文档的登录接口"""
serializer_class = ApiLoginSerializer
authentication_classes = []
permission_classes = []
def post(self, request):
username = request.data.get("username")
password = request.data.get("password")
user_obj = auth.authenticate(
request,
username=username,
password=hashlib.md5(password.encode(encoding="UTF-8")).hexdigest(),
)
if user_obj:
login(request, user_obj)
# 返回token
refresh = RefreshToken.for_user(user_obj)
access_token = str(refresh.access_token)
# Return the tokens in the response
return SuccessResponse({'refresh': str(refresh), 'access': access_token})
else:
return ErrorResponse(msg="账号/密码错误")
2.2填写用户名和密码

2.3后置操作提取变量

2.4为所有请求添加认证请求头

更多推荐
所有评论(0)