二十五 微信小程式的登陸 實際邏輯

2022-05-02 18:33:10 字數 2160 閱讀 1483

小程式端

"

請輸入手機號

" bindinput="

inputphone

" value="

}">

"getuserinfo

" bindgetuserinfo="

dosubmit

" >登入

我們不用但是可以寫上

data: ,

inputphone: function (e) )

},

dosubmit: function (e) ,

method:

'post',

datatype:

'json',

responsetype:

'text',

success: (res) =>})}

})},

後端介面

#

使用者表class

userinfo(models.model):

"""使用者表

"""phone = models.charfield(verbose_name='

手機號',max_length=32)

token = models.charfield(verbose_name='

token

',max_length=32)

openid = models.charfield(verbose_name='

',max_length=32)

#

urlfrom django.conf.urls import

urlfrom django.contrib import

admin

login

urlpatterns =[

url(r

'^admin/

', admin.site.urls),

url(r

'^login/

', login.loginview.as_view()),

]

#

views.py

1. 根據傳過來的phone去資料庫中查詢,有就更新,沒有就建立

2. 建立的時候要phone(已經傳過來了),token我們自己先uuid測試,openid是個關鍵 需要去乙個**獲取【下面的**】

models

from rest_framework.views import

apiview

from rest_framework.response import

response

import

requests

import

uuid

#create your views here.

class

loginview(apiview):

def post(self,request,*args,**kwargs):

phone = request.data.get('

phone')

wx_code = request.data.get('

wx_code')

##info =

result

= requests.get(url='', params=

info)

openid = result.json()['

openid']

exists = models.userinfo.objects.filter(phone=phone).exists()

token =str(uuid.uuid4())

ifnot

exists:

models.userinfo.objects.create(

phone=phone,

token=token,

openid=openid

)else

: models.userinfo.objects.filter(phone=phone).update(token=token, openid=openid)

return response()

前端

success: (res) =>

這裡我們就不在贅述

小程式微信授權登陸

index wxml view class container view wx if view wx if view class header image src image view view class content view 康健理療儀 申請獲取以下許可權 view text 獲得你的公開資...

微信小程式的登陸流程詳解

1.客戶端呼叫 wx.login 獲得返回引數 code 2.客戶端呼叫 wx.request 將 code 傳送到伺服器 伺服器會獲得返回引數 openid 和 session key 這兩個資料主要用在支付,資料簽名,資料解密等與使用者登陸態和標識有關的邏輯中。openid是使用者唯一標識,但不...

微信小程式如何實現登陸功能

api中 舉例 登入介面 login code 註冊介面 enroll code,encrypteddata,iv 登入流程 1 首先通過wx.login獲取code值,利用wx.getuserinfo獲取使用者資訊,呼叫註冊介面,把新使用者資訊新增到後台資料庫。getuserinfo consol...