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