1. 程式人生 > >微信小程式後臺登入一直失敗

微信小程式後臺登入一直失敗

問題描述:

前端呼叫wx.login獲取code後,將code傳遞給後臺,後臺進行登入操作,登入使用的是shiro框架。之前登入的時候一直都很有效,但是今天登入後,當前端再次呼叫其他介面時,一直報401未登入!

問題原因:

經過不斷的列印日誌及分析排查,終於發現了原因:微信不維持session會話!換句話說,微信每次請求伺服器的session都是不同的!後來再次檢視微信小程式文件時,看到一個詞:自定義登入態,當時沒怎麼在意,現在想想,其含義是,小程式和開發者伺服器之間的會話,需要自己去想辦法維護,自己去定義一個session或json web token。

解決方案:

前端在第一步呼叫完wx.login得到code後,將code傳遞給後臺,後臺將此次連線的sessionId回傳給前端,前端將這個sessionId儲存在Cookie中(SESSION=a94e5071-f0f3-40ed-ba2c-4822c1ee4dbd),下次呼叫介面進行訪問時,將這個Cookie帶到請求中,這就保證了請求的sessionId一致了。

參考文章:

微信小程式中使用者登入和登入態維護:https://blog.csdn.net/qq_38125123/article/details/71196853