[sa-token]StpUtil.getLoginId
闲聊
一般情况下,我们想用uid,可能需要前端将uid传过来,或者将token传来,然后我们进行识别。
用了sa-token之后,可以使用StpUtil.getLoginId()方法获取当前会话的用户id
代码展示
例如以下代码:
public ResponseResult getMenu() {
// 获取用户角色
Long uid = Long.parseLong(StpUtil.getLoginId().toString());
log.info("获得用户id:"+uid);
UserInfo userInfo = userMapper.getUserById(uid);
log.info("获得用户权限:"+userInfo.getRoleId());
// 获取所有激活的状态菜单
List<MenuDataItem> menus = systemMapper.getMenus(userInfo.getRoleId());
return ResponseResult.success(menus);
}
我们需要用户id来查询用户角色,因此使用StpUtil.getLoginId()直接获取到用户的id来进行操作
测试
现在有admin和root两个角色,我们可以通过加载菜单的情况看到:多用户同时登录的情况下,StpUtil.getLoginId()是能正确获取到对应用户id的。
版 权 声 明
作者:萌狼蓝天
QQ:3447902411(仅限技术交流,添加请说明方向)
转载请注明原文链接:https://www.cnblogs.com/zwj/p/18519911/satoken-getLoginUserId
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
2021-11-01 【Office】【Excel】将多个工作表合为一个工作表