1.前置条件
yurun-common项目切换到authModify分支重新install   yurun-common-security模块
yurun-service-api项目切换到authModify分支重新install  auth-api模块
yurun-service-public项目切换到authModify分支启动相应的服务
2.颁发Token接口使用 /issueToken
1.入参:
yurun-service-api中auth-api模块中的 CustomTokenRequest 类
{*"channel": "5", //从请求的头部获取"claims": {}, //额外参数,目前没有项目使用*"from": "5", //系统来源编号"permStrList": ["sys:view","sys:user:search"], //权限字符串列表"userId": "1", //用户编号"userInfoJson": "" //用户信息json字符串有就传,目前没有项目使用}
(1)*from字段需要在yurun-service-api中JWTConstant中定义新增系统的编号枚举类,已有枚举类如下:
public enum From {//BI后台BICENTER("BICENTER", "1"),//轨迹APPBITRACK("BITRACK", "2"),//电商平台MALLADMINMALLADMIN("MALLADMIN", "3"),//X6-系统用户X6SYSTEM("X6SYSTEM", "4"),//X6-普通用户X6CUSTOM("X6CUSTOM", "5"),//电商平台MALLSHOPPERMALLSHOPPER("MALLSHOPPER", "6");//需要新增 拍卖枚举类.......private final String info;private final String value;From(String info, String value) {this.value = value;this.info = info;}public String getInfo() {return info;}public String getValue() {return value;}}
2.出参:
JwtResponse
{"token": "a157bcae-071f-48c6-9ff7-1de2b06898e5","refreshToken": "44d12417-ebeb-4686-955e-aec1e4fca2d8","userId": "1"}
3.参考接口:
yurun-service-bi: /API120301 /API120101 /TRACK100101
3.退出登录
3.1根据token退出登录 /clearLoginByToken
3.1.1入参:
{"token":"a157bcae-071f-48c6-9ff7-1de2b06898e5"}
3.1.2无出参
3.1.3使用实例
authModify分支下的yurun-service-bi中的  /TRACK100102
具体代码如下:
@ApiOperation(value = "登出", notes = "登出", httpMethod = "POST",response = AjaxResult.class,produces = MediaType.APPLICATION_JSON_UTF8_VALUE)@PostMapping(value = "/TRACK100102")public AjaxResult logout(@RequestHeader(value = JwtConstants.HEADER_TOKEN) String token) {try {String accessToken = token.split(" ")[1];authService.clearLoginByToken(accessToken);return AjaxResult.ok();} catch (Exception e) {logger.error("登出失败", e);return AjaxResult.error();}}
3.2清理指定channel用户登录信息/clearLoginByUserId
3.2.1入参
{"userId":"1", //用户编号"from":"5", //系统来源channels:["1","3"] //清除channel为1,3的 用户编号为1的系统来源为5的用户登录信息}
3.2.2无出参
3.3清除其他端/clearOtherTerminal
3.3.1入参
{"userId":"1", //用户编号"from":"5", //系统来源channels:["1","3"]//用户编号为1的系统来源为5的 channel为1,3的用户登录信息不被清除,而其他channel 被清除}
