首页 > 其他分享 >认证组件

认证组件

时间:2023-12-26 16:34:11浏览次数:29  
标签:LoginAuth 书写 认证 token user 组件 BaseAuthentication

认证组件的书写

例:书写登录认证

第一步:新建一个py文件(以auth为例)

第二步:书写认证类,并继承BaseAuthentication

# 首先导入模块
from rest_framework.authentication import BaseAuthentication

# 书写认证类(以登录认证为例)
class LoginAuth(BaseAuthentication):

 

第三步:在类中重写authenticate方法,完成认证

class LoginAuth(BaseAuthentication):
    def authenticate(self, request):
        token = request.query_params.get('token')
        if not token:
            raise AuthenticationFailed('请先登录!')
        user_token = UserToken.objects.filter(token=token).first()
        if user_token:
            user = user_token.user
            return user, user_token
        else:
            raise AuthenticationFailed('token不合法!')

 

第四步:使用认证类,在视图函数内书写

authentication_classes = [LoginAuth] 

 

标签:LoginAuth,书写,认证,token,user,组件,BaseAuthentication
From: https://www.cnblogs.com/wellplayed/p/17928425.html

相关文章

  • JavaWeb - Day12 - 基础登录功能、登录校验(重点)、登录认证、异常处理
    01.登录基础功能在前面的课程中,我们已经实现了部门管理、员工管理的基本功能,但是大家会发现,我们并没有登录,就直接访问到了Tlias智能学习辅助系统的后台。这是不安全的,所以我们今天的主题就是登录认证。最终我们要实现的效果就是用户必须登录之后,才可以访问后台系统中的功能。......
  • 路由组件
    自动生成路由第一步:导入fromrest_framework.routersimportSimpleRouter,DefaultRouter 第二步:实例化router=SimpleRouter() 第三步:注册路径(以BookView为例)router.register('books',views.BookView,'books') 第四步:添加路由方式一:在下方书写urlpatte......
  • 产品上架拼多多需要什么认证?
    随着网络电商的发展,无论是平台还是消费者,对商品质量的要求,越来越重视了。就拿天猫、京东、拼多多等电商平台来说,商家在入驻时都必须要提供至少一份具备CMA/CNAS印章的产品质检报告。拼多多检测报告需要提供什么资料?(1)公司名称、公司地址(2)产品名称、产品型号(3)试验样品(多个型号每个准......
  • 淘宝上架家电需要什么认证
    1。申请开店的企业所销售的产品必须通过国家强制认证,企业必须要提供该款产品的3c认证书。2。淘宝店铺如果销售燃气热水器的话,就必须要提供《家用燃气快速热水器》国家标准的质量检测报告,只有符合国家质量标准的产品才能够在淘宝平台进行销售。如果商家销售的是包含燃气灶的产品,就......
  • vue3学习基础之组件
    组件Comp.vue<scriptsetup>import{ref,provide,readonly,defineAsyncComponent}from"vue";importDemoCompfrom"../../components/simple/DemoComp.vue";importErrorComponentfrom"../../components/simple/ErrorComp.vue&......
  • C++ Qt开发:QSqlDatabase数据库组件
    Qt是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍QSqlDatabase数据库模块的常用方法及灵活运用。QtSQL模块是Qt框架的一部分,它提供了一组类和函数......
  • Angular 17+ 高级教程 – Component 组件 の Query Elements
    前言Angular是MVVM框架。MVVM的宗旨是"不要直接操作DOM"。在 Component组件のTemplateBindingSyntax文章中,我们列举了一些常见的DOMManipulation。constelement=document.querySelector<HTMLElement>('.selector')!;element.textContent='value';......
  • ArkUI组件公共属性
    一、公共样式类属性ArkUI框架提供的基础组件直接或者间接的继承自 CommonMethod , CommonMethod 中定义的属性样式属于公共样式。下面就来学习这些样式1.1.尺寸设置宽高设置设置组件的宽高,缺省时使用组件自身内容的宽高,比如充满父布局可以使用 string 值:"100%",当组件同时设置......
  • ArkUI容器类组件
    容器组件指的是它可以包含一个或多个子组件的组件,除了前边介绍过的公共属性外。一、线性布局容器(Row、Column)线性容器类表示按照水平方向或者竖直方向排列子组件的容器,ArkUI开发框架通过 Row 和 Colum 来实现线性布局。1.1.主轴和纵轴概念什么是主轴和纵轴?对于线性容器来说,有主......
  • 如何通过UMC配置外围组件
    随着云计算技术的不断发展,在信息化建设模式上云是大势所趋。对于企业而言,已建立的内部集成并不能支撑其快速搭建开发环境、快速部署集群服务,并且动态水平扩展对多组织情况许可费用高昂、没有敏捷快速迭代机制,导致开发完毕就落伍,以及不能快速进行产品扩展等现象,解决这一问题的根本方......