Vue绑定用户接口实现代码示例
微博绑定用户接口
oauth/urls.py中添加路由
urlpatterns=[ path('weibo/binduser/',views.OauthWeiboBindUser.as_view()),# /oauth/weibo/callback/ ]
oauth/views.py中添加试图函数
classOauthWeiboBindUser(APIView): permission_classes=(AllowAny,) defpost(self,request): #绑定用户,1.已注册用户,2.未注册用户 #1.1获取用户名,密码,weibo_uid username=request.data.get('username') password=request.data.get('password') weibo_uid=request.data.get('weibo_uid') ifnotall([username,password,weibo_uid]): returnResponse({'code':999,'msg':'参数不全'}) #0.判断是否存在此用户 try: user=User.objects.get(username=username) exceptExceptionase: user=None #1.已注册用户 ifuser: #1.2,如果存在就验证密码,验证通过,就绑定,返回token,登录成功 ifuser.check_password(password): ou=OauthUser(uid=weibo_uid,user=user,oauth_type='1') ou.save() payload=jwt_payload_handler(user)#通过user对象获取到jwt的 payload信息 token=jwt_encode_handler(payload)#生成token data=jwt_response_payload_handler(token,user) data['type']='0'#指定为登录成功 returnResponse({'code':0,'msg':'登录成功','data':data}) else: returnResponse({'code':999,'msg':'密码错误'}) else: #2.未注册用户 #2.1生成新用户,设置用户名密码,保存,然后绑定,返回token,登录成功 user=User(username=username) user.set_password(password) user.save() ou=OauthUser(uid=weibo_uid,user=user,oauth_type='1') ou.save() payload=jwt_payload_handler(user) token=jwt_encode_handler(payload) data=jwt_response_payload_handler(token,user) data['type']='0'#指定为登录成功 returnResponse({'code':0,'msg':'登陆成功','data':data})
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。