微信小程序单点登录接入方案
单点登录整体流程

- 第三方H5应用接收底座统一URL回调地址,从URL中解析ticket的参数.
const ticket = getQueryString("ticket")
示例代码:
function getQueryString(name) {
var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i')
var r = window.location.search.substr(1).match(reg)
if (r != null) {
return unescape(r[2])
}
return null
}
- 第三方H5应用拿到ticket之后,调用H5后台接口发起单点登录。
if(ticket){
// 通过传递参数ticket,获取用户信息
....
}else{
// 如果不存在ticket
...
}
- H5后台获取ticket,通过平台提供的SDK能力换取用户基础信息,调用方式详见【数据仓开放文档】基于ticket查询个案基础信息
1.ticket有效期为1分钟,使用一次后即失效
2.ticket会与应用appkey绑定,获取用户信息时平台会校验ticket的来源和调用解析接口的应用来源信息
应用能力中心配置H5单点登录信息

应用类型:H5微应用;
H5微应用地址:应用URL,填写应用实际部署静态文件目录(第三方供应商的应用地址)
(填写的域名不得包含任何额外参数信息)
;
调试:点击调试,可以查看调试二维码信息,通过未来社区智慧服务平台居民端小程序扫码按钮扫描进入应用的H5页面;
应用地址参数:应用需要的额外参数信息,通过“&”符号连接(userType=0&from=weChat&.....),平台会自动将参数拼接到入口URL上面;
用户进入等级:游客(未绑定身份证),初级认证用户(实名认证),高级认证用户(实名认证+绑定房产)。在社区居民端小程序点击应用时会判断当前用户是否满足使用应用的权限,只有满足或者大于设置等级的用户才能进入应用。(高级认证用户 > 初级认证用户 > 游客)