跳到主要内容

PC/WAP联合登录API规划

所有的controller应该放在passport中

PC跳转API

路径
URL:{passport-domain}/connect/pc/{type}
METHODGET
参数
参数类型说明
typeString登录方式,可选有:QQ、WECHAT、WEIBO、ALIPAY
处理逻辑

拼接参数

redirect至第三方平台

WAP跳转API

路径
URL:{passport-domain}/connect/wap/{type}
METHODGET
参数
参数类型说明
typeString登录方式,可选有:QQ、WECHAT、WEIBO、ALIPAY
处理逻辑

拼接参数

redirect至第三方平台

callback API

路径
URL:{passport-domain}/connect/{port}/{type}/callback
METHODGET
参数
参数类型说明
codeString第三平台返回的code
typeString登录方式,可选有:QQ、WECHAT、WEIBO、ALIPAY
portString登录端,可选有:PC、WAP
处理逻辑

生成一个uuid 向第三方平台请求,获取openid及access_token 拿到openid后检测是否有绑定

一、如果有绑定会员:

如果有绑定则生成token并跳转至前约定的会员中心页(/member) 跳转的同时,向cooike写入如下值:

accessToken=xxx
refreshToken=xxx

写入路径为主域名,有效期为token的有效期

二、如果没有绑定会员

将uuid和openid、access_token、type参数进行绑定:

向redis以 OPENID_{UUID}的key 写Auth2Token对象:

image-20180608194212884

跳转至约定的绑定页/binder,并且向cookie中写入uuid

其中的type应该采用枚举:

image-20180608195007956