小程序如何设置session

2024-11-15 00:25:05

1、因为我只写java web多,所以就以java web为主。那么写过java web的都知道,request是一次请求,session是一个会话周期,但是后台是如何识别请求是属于哪个session的呢?这就要降到cookie和session的关系。

小程序如何设置session

2、我们都知道,session是服务器维护的会话,cookie是客户端(浏览器)持有的保存一些数据的,那么session实际上是通过cookie识别的。(因此当用户浏览器禁用cookie,也就代表服务器端session也被禁用了,无法得知访问是属于哪个session,因此就不存在session了。但是也不代表完全无法得到)

小程序如何设置session

3、那么当浏览器第一次访问网站,网站会在re衡痕贤伎sponse的header中添加一个叫做Set-Cookie的字段,这个字段的含义就是让浏览器将唁昼囫缍这里面的每条数据都放到你的cookie里面,这对于用户开发者都是不可见的,浏览器会自动放入cookie,而每次请求都会带着set-cookie里面的数据在cookie里,因此服务端只需要看一下cookie里面的sessionid就知道是来源了。在jsp中是jessionid这个值。

小程序如何设置session

4、针对wx.request添加header

小程序如何设置session

5、那么知道了原理,我们就可以手动模仿浏览器自动添加cookie这一步,那么app.js里面有一个onShow/onLaunch,在这步里面,我们可以使用一个wx.request去访问我们的后台,那么后台的服务器这时候是可以拿到第一个sessionid的,那么服务端将这个sessionid回复给我们,我们就可以记录下这个header。首先在我们的app.js全局数据中添加header

小程序如何设置session

6、这里面可以放我们的cookie,然后请求服务端返回当前会话的sessionid客户端代码:

小程序如何设置session

7、服务端代码:

小程序如何设置session

8、很简单就能直接获得我们的id,这样子,我们就完成了header的获取那么每次我们的wx.request,就要带上这个header代码:

小程序如何设置session

9、以上就是小编带给大家如何小程序如何设置session关键所在,希望大家可以喜欢,如果喜欢的话可以点赞哦,也可以发表自己的看法

猜你喜欢