美文网首页
认证,权限,节流,版本,解析器 基本使用

认证,权限,节流,版本,解析器 基本使用

作者: 恬恬i阿萌妹O_o | 来源:发表于2019-05-07 20:25 被阅读0次

    认证的基本使用
    局部配置
    自定义认证类
    在视图通过authentication_classes设置认证类
    authentication_classes = [MyOrderAuthentication,]
    如果 authentication_classes 设置为空列表,就不再进行认证了 authentication_classes = []

      全局配置 :在settings配置文件中设置全局默认的认证 
     REST_FRAMEWORK = {  'DEFAULT_AUTHENTICATION_CLASSES'['unitls.authentication.MyOrderAuthentication'],
     }
    

    权限的基本使用
    局部配置
    自定义权限类 类,必须继承:BasePermission,必须实现:has_permission方法
    在视图中通过permission_classes属性来设置
    permission_classes = [MyOrderPermission,]
    如果authentication_classes设置为空列表,就不再进行权限认证了 permission_classes = []

      全局配置 :在settings配置文件中设置全局默认的权限
      REST_FRAMEWORK = {'DEFAULT_PERMISSION_CLASSES':['unitls.permission.MyOrderPermission'],
      }
    

    节流的基本使用
    可以根据ip和用户进行节流
    局部配置
    自定义节流类
    在视图中通过throttle_classes属性来设置
    throttle_classes = [VisitThrottle,]

      全局配置 :在settings配置文件中设置全局默认的节流
      REST_FRAMEWORK = {'DEFAULT_THROTTLE_CLASSES':['unitls.throttle.VisitThrottle'],
      }
      
       使用内置限制类
        from rest_framework.throttling import SimpleRateThrottle
        推荐使用这种
        class VisitThrottle(SimpleRateThrottle):
              没有登录用户,每分钟访问10次
              scope = 'logined'
              def get_cache_key(self, request, view):
              return request.user.username
    

    版本的基本使用
    局部配置
    自定义版本控制类 ParmasVersion
    在视图中通过versioning_class属性来设置
    versioning_class = ParmasVersion

      全局配置 :在settings配置文件中设置全局默认的版本
       REST_FRAMEWORK = 'DEFAULT_VERSIONING_CLASS':'unitls.version.ParmasVersion',
    
    
        设置文件中的配置信息
    
        REST_FRAMEWORK = {
        'VERSION_PARAM':'version',
        'DEFAULT_VERSION':'v1',
        'ALLOWED_VERSIONS':['v1','v2'],
        }
     
    
    全局设置
    
        REST_FRAMEWORK = {
        'VERSION_PARAM':'version',
        'DEFAULT_VERSION':'v1',
        'ALLOWED_VERSIONS':['v1','v2'],
        'DEFAULT_VERSIONING_CLASS':'rest_framework.versioning.URLPathVersioning',
        }
    

    解析器的基本使用

      DRF内置的解析器FormParser,JSONParser
    
      局部配置在视图函数中配置parser_classes=[JSONParser,]
    
      全局配置在settings文件中设定
      REST_FRAMEWORK={'DEFAULT_PARSER_CLASSES':['rest_framework.parsers.JSONParser'],
    }
    

    相关文章

      网友评论

          本文标题:认证,权限,节流,版本,解析器 基本使用

          本文链接:https://www.haomeiwen.com/subject/ylgyoqtx.html