网友真实露脸自拍10p,成人国产精品秘?久久久按摩,国产精品久久久久久无码不卡,成人免费区一区二区三区

小程序模板網(wǎng)

用Flask加解密微信小程序中的3rd_session

發(fā)布時(shí)間:2018-04-17 12:17 所屬欄目:小程序開(kāi)發(fā)教程

如題,在上一文章中分析了3rd_session和OpenId的關(guān)系,為確保隨機(jī)散列值和OpenId的唯一對(duì)應(yīng)關(guān)系,完全可以借助Flask中的itsdangerous 的TimedJSONWebSignatureSerializer來(lái)實(shí)現(xiàn)這一目標(biāo),具體操作流程如下: 
step1: Flask中導(dǎo)入相應(yīng)的庫(kù):

 

							
  1. from itsdangerous import TimedJSONWebSignatureSerializer as Serializer
  2.  
  3.  
  4. def gen_3rdsession(openId):
  5. # 用OpenId加密生成3rdsession
  6. s = Serializer(current_app.config['SECRET_KEY'])
  7. third_session = s.dumps({'openId': openId})
  8. return third_session
  9.  
  10. def gen_openId(thirdsession):
  11. # 用3rdsession解密生成OpenId
  12. s = Serializer(current_app.config['SECRET_KEY'])
  13. openId = s.loads(thirdsession)['openId']
  14. return openId

step2:生成3rdsession:

 

							
  1. third_session = gen_3rdsession(openId)

這個(gè)3rdsession本身就是Bsion格式,類似于Json,可以直接返回。

step3:然后在小程序中獲取:

 

							
  1. var third_session = data.data;
  2. console.log(third_session)
  3. try {wx.setStorageSync('third_session', third_session)}
  4. catch (e) {}

將其保存在本地緩存中。

step4:接下來(lái)就是在POST數(shù)據(jù)時(shí),將third_session提交至服務(wù)器進(jìn)行解密獲取Openid,進(jìn)而在數(shù)據(jù)庫(kù)查詢用戶的相關(guān)數(shù)據(jù)。

呵呵,該加密應(yīng)該是絕對(duì)安全的,每次加密的數(shù)據(jù)是不一樣的,加密后的OpenId==3rd_session如下:

 

 


							
  1. eyJhbGciOiJIUzI1NiIsImV4cCI6MTQ5MzI2NDc5NCwiaWF0IjoxNDkzMjYxMTk0fQ.eyJvcGVuSWQiOiJvaXJiczBMT1dyajF2ZDRzVHAtamNxd1FWNy1JIn0.GM2THjHKYM_Rt8gBJuZcWNwDxxz1TgoAZCKLyOWs9Uk


易優(yōu)小程序(企業(yè)版)+靈活api+前后代碼開(kāi)源 碼云倉(cāng)庫(kù):starfork
本文地址:http://www.xiuhaier.com/wxmini/doc/course/23591.html 復(fù)制鏈接 如需定制請(qǐng)聯(lián)系易優(yōu)客服咨詢:800182392 點(diǎn)擊咨詢
QQ在線咨詢
AI智能客服 ×