鍍金池/ 問答/HTML5  PHP  HTML/ 微信小程序button授權(quán)的一些問題

微信小程序button授權(quán)的一些問題

我想問的是?,F(xiàn)在后臺(tái)是用三個(gè)參數(shù) 換取用戶加密之后的token。
一個(gè)是通過wx.login獲取的code
另外兩個(gè)是通過wx.getUserInfo獲取的iv和 encryptedData。
三個(gè)參數(shù)換取token
問題來了。
假如我現(xiàn)在獲取了并且拿到了這個(gè)token 。 并且保存在本地,用戶每次進(jìn)來就直接用這個(gè)token就好了,不用再掉api了
那什么時(shí)候token會(huì)失效呢,我不信他永遠(yuǎn)都能用。
微信授權(quán)肯定也會(huì)過期吧。wx。login拿到的code也就一定不會(huì)變嗎?
這三個(gè)參數(shù)有一個(gè)失效了,那后臺(tái)返給我的token不說就不能用了。

我現(xiàn)在的做法是通過微信api,拿到用戶有沒有授權(quán)。沒有走整個(gè)流程。
或者,后臺(tái)api字段返回給我錯(cuò)誤碼,我再重新獲取用戶令牌。不知道這樣做可行不可行

你們是 怎么處理的呢,說說你們的做法和見解,最好前后說多一些業(yè)務(wù)處理后臺(tái)不是很了解可以說下大概都做了什么,

回答
編輯回答
傲嬌范

login拿到的code也就一定不會(huì)變嗎?

不是“一定不會(huì)變嗎”,而是“一定會(huì)變”!
每次獲取的code那些都是會(huì)變的,通過微信給的算法和后端接口才能獲取到openid和unionid,這兩個(gè)才是不會(huì)變的。

這兩個(gè)東西拿來做什么呢?
就是拿來“自動(dòng)登錄”的,判斷是來自微信的某個(gè)用戶后,返回自己定義的 token,以后每次認(rèn)證用戶信息的時(shí)候用這個(gè) token,設(shè)個(gè)有效期,過期后重新通過code換openid/unionid,再換token。

2017年1月8日 05:17
編輯回答
枕邊人

一樓正解。
再稍微補(bǔ)充下,code字符串是每次都變化的而且串每次只能用一次,把code發(fā)送到后臺(tái)拿code去微信接口換openid和sessionkey,生成自己定義的token,返回緩存到小程序,用來校檢。

2017年12月24日 11:17