1:简单流程图
2:设计点,安全考虑
- 用户在APP中的登录态票据token,当用户需要带状态跳出时,先在APP中使用token获取一个一次一密的ticket【服务端生成,短有效期,一般缓存,可使用一次,与用户和行为一一对应】
- 打开web页面时,链接上加上uid+ticket参数,服务端接收到请求,验证ticket,生成web登录态token【token可存入关系型数据库,有相对应的生成时间和过期时间】
- 响应用户请求,把web登录态票据按照一定规则写入cookie,用户在后面做其他业务时的身份认证
3:总结
- 只能通过APP中的有效状态交换获取票据
- ticket只能用一次,用户链接泄漏不会被别人利用
- 跳转到web页面上后,用ticket交换到web登录态,种cookie,保存web上用户状态,便于后面的业务交互使用
来源:oschina
链接:https://my.oschina.net/u/1268722/blog/874186