版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010918487/article/details/88657288
公司web框架使用的是go版本的echo。
公司整个流程大致如下:
登录成功后,会把jwt生成的token存入cookie,然后以后的每次需要鉴权的请求都需要去校验token信息,即从cookie里面取出cookie然后进行比对。
postman模拟用户登录:http://127.0.0.1:9091/user/login,登录成功,已经将token存入了cookie
postman模拟用户管理,需要鉴权:http://127.0.0.1:9091/user/manage,实现用户创建,没问题
但是问题来了,在执行角色查询http://localhost:9091/role/manage的时候就出问题了,始终无法通过鉴权。
各种debug,哈哈哈。
后来才发现当使用127.0.0.1的时候存入的cookie里面的domain是127.0.0.1,而我执行角色操作的时候访问的是localhost,domian不一致,导致虽然cookie里面存了token,但取出来的却是空的。
将两边的domain统一就好了。
cookie的domain属性默认是创建cookie的服务器主机名。