微信小程序登录
https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html
(1)小程序端调用wx.login()接口获取登录凭证code
(2)小程序端调用wx.request()接口把code发送到我的服务器后台
(3)在我的服务器后台,我已知appId、appsecret、code,然后调用如下官方提供的http接口, 官方提供了http接口地址为: https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code, 即可返回获取openId、session_key
(4) 在我的服务器后台获得的openid,session_key, 然后生成一个唯一字符串sessionid作为键,将openid和session_key作为值,存入redis,超时时间设置为2小时,将sessionid返回给微信小程序,微信小程序端把sessionid保存在storage中;
(5)在之后,调用那些需要登录后才有权限的访问的后台服务时,你可以将保存在storage中的sessionid取出并携带在请求中(可以放在header中携带,也可以放在querystring中,或是放在body中,根据你自己的需要来使用),传递到后台服务,后台代码中获取到该sessionid后,从redis中查找是否有该sessionid存在,存在的话,即确认该session是有效的,继续后续的代码执行,否则进行错误处理。