微信小程序開發(fā)之保持用戶的session
在微信小程序開發(fā)中,由wx.request()發(fā)起的每次請(qǐng)求對(duì)于服務(wù)端來說都是不同的一次會(huì)話,即對(duì)應(yīng)服務(wù)端不同的session,由于項(xiàng)目中使用session保存用戶信息所以導(dǎo)致后續(xù)請(qǐng)求相當(dāng)于未登錄的情況。 解決辦法:1、在用戶登錄時(shí),服務(wù)端將用戶的sessionId返回。 2、小程序保存sessionId,在之后的每次請(qǐng)求中在請(qǐng)求頭中攜帶sessionId 服務(wù)端關(guān)鍵代碼: this.outString("{sessionId:'" + request.getSession().getId() + "',}"); 小程序端登錄后,把sessionId存入全局變量 getApp().globalData.header.Cookie = 'JSESSIONID=' + _data.sessionId; app.js中代碼 globalData:{ header:{'Cookie': ''} //這里還可以加入其它需要的請(qǐng)求頭,比如'x-requested-with': 'XMLHttpRequest'表示ajax提交,微信的請(qǐng)求時(shí)不會(huì)帶上這個(gè)的 }, 小程序端請(qǐng)求時(shí)帶上sessionId var header = getApp().globalData.header; wx.request({ url: "localhost:8080/xx/xx", header: header, success:function(res){ } } 建議封裝自己的工具,不然每次請(qǐng)求都這樣加就很煩。
微信小程序 獲取openid 存入數(shù)據(jù)庫(kù) C#
|