python常用uuid模块

uuid.uuid4(),会根据我们当前的网卡和时间生成的一个随机字符串。

注意:uuid.uuid4()生成的是一个对象,需要强转为字符串。

uid = str(uuid.uuid4())  #当前网关和时间组成的随机字符串

咱们一般把他用作登录认证。

from rest_framework.views import APIView
from rest_framework.response import Response
from luffy.models import *
import uuid
 
 
# 用户认证
class AuthView(APIView):
 
    def post(self,request,*args,**kwargs):
        """
        用户登录认证
        :param request:
        :param args:
        :param kwargs:
        :return:
        """
 
        ret = {'code':1000} 
        # user = request.data['user']   #方法可用,但不建议用,没有值就会报错
        user = request.data.get('user')  #没有值会返回none
        pwd = request.data.get('pwd')
 
        user = UserInfo.objects.filter(user=user,pwd=pwd).first() #跟数据库用户做校验
        if not user:
            ret['code'] = 1001
            ret['error'] = '用户名或密码错误'
        else:   #登录成功
            uid = str(uuid.uuid4())  #当前网关和时间组成的随机字符串
            Token.objects.update_or_create(user=user,defaults={'token':uid}) #update_or_create 有就跟新,没有就创建
            ret['token'] = uid
        return Response(ret)

  

  

posted @ 2018-06-06 16:03  高~雅  阅读(8432)  评论(0编辑  收藏  举报