用户令牌用于传递用户登录基本数据,可以根据此令牌判断用户是否登录,并利用它获取用户信息及完成更多操作。
GO 参考代码 : controllers\api\member\login.go
2.1 添加 APIFOX 全局变量 UTK ( 右上角 )
2.2 新建登录请求接口
接口地址 : /Login/PhoneNoAndPassword
参考手册 :
https://apifox.com/apidoc/shared-acc8b631-24b9-4896-9d56-5b9bdf11f32b/api-76590274
2.3 添加接口后置函数,保持登录令牌,代码如下 :
添加 APIFOX 全局参数 UTK 关联全局变量 UTK :
通过上面的步骤,在每次请求时会使用 header 发送会员登录令牌数据。
简单的讲针对移动端登陆,后端会基于 jwt 产生一个用户令牌,移动端接收并保存这个令牌,然后在请求时用过 header 携带此令牌。
后端验证用户登录的流程 :
源码位置 : middlewares\api.mw.go 65 行附近 :
默认情况下 Account、User、Order 3个一级路由是需要进行用户登陆检查的,如果您新建一个功能需要触发用户登录检查功能,那么路由应该设置为 /User/*** 或 /Account/***。
通过 CheckLogin() 函数基于 jwt 检查用户是否登录,成功后返回用户 id,res 值为 true ,失败时 res 为false。
有了用户ID就可以基于它进行用户查询、用户数据记录等后续操作。