Vue綁定用戶接口實現(xiàn)代碼示例
更新時間:2020年11月04日 10:28:40 作者:周曉楠
這篇文章主要介紹了Vue綁定用戶接口代碼實例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
微博綁定用戶接口
oauth/urls.py 中添加路由
urlpatterns = [ path('weibo/binduser/', views.OauthWeiboBindUser.as_view()), # /oauth/weibo/callback/ ]
oauth/views.py 中添加試圖函數(shù)
class OauthWeiboBindUser(APIView): permission_classes = (AllowAny,) def post(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') if not all([username, password, weibo_uid]): return Response({'code': 999, 'msg': '參數(shù)不全'}) # 0.判斷是否存在此用戶 try: user = User.objects.get(username=username) except Exception as e: user = None # 1. 已注冊用戶 if user: # 1.2 , 如果存在就驗證 密碼, 驗證通過,就綁定, 返回token,登錄成功 if user.check_password(password): ou = OauthUser(uid=weibo_uid, user=user, oauth_type='1') ou.save() payload = jwt_payload_handler(user) # 通過user對象獲取到j(luò)wt的 payload信息 token = jwt_encode_handler(payload) # 生成token data = jwt_response_payload_handler(token, user) data['type'] = '0' # 指定為登錄成功 return Response({'code': 0, 'msg': '登錄成功', 'data': data}) else: return Response({'code': 999, 'msg': '密碼錯誤'}) else: # 2. 未注冊用戶 # 2.1 生成新用戶, 設(shè)置用戶名密碼, 保存, 然后綁定, 返回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' #指定為登錄成功 return Response({'code':0,'msg':'登陸成功','data':data})
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- Vue雙向數(shù)據(jù)綁定(MVVM)的原理
- Vue自定義組件雙向綁定實現(xiàn)原理及方法詳解
- Vue Object.defineProperty及ProxyVue實現(xiàn)雙向數(shù)據(jù)綁定
- Vue循環(huán)中多個input綁定指定v-model實例
- vue中v-model對select的綁定操作
- 解決vue項目input輸入框雙向綁定數(shù)據(jù)不實時生效問題
- 解決vue使用vant下拉框van-dropdown-item 綁定title值不變問題
- vue實現(xiàn)給div綁定keyup的enter事件
- vue 通過綁定事件獲取當(dāng)前行的id操作
相關(guān)文章
vue給input file綁定函數(shù)獲取當(dāng)前上傳的對象完美實現(xiàn)方法
這篇文章主要介紹了vue給input file綁定函數(shù)獲取當(dāng)前上傳的對象完美實現(xiàn)方法,需要的朋友可以參考下2017-12-12Vue?關(guān)于$emit與props的使用示例代碼
父組件使用 props 把數(shù)據(jù)傳給子組件,子組件使用 $emit 觸發(fā)父組件的自定義事件,今天通過示例給大家詳細(xì)介紹下Vue?關(guān)于$emit與props的使用,感興趣的朋友一起看看吧2022-03-03基于 flexible 的 Vue 組件:Toast -- 顯示框效果
這篇文章主要介紹了基于 flexible 的 Vue 組件:Toast -- 顯示框效果,需要的朋友可以參考下2017-12-12vue-cli3 配置開發(fā)與測試環(huán)境詳解
這篇文章主要介紹了vue-cli3 配置開發(fā)與測試環(huán)境詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-05-05