关于POSTMAN中的一些session和csrf_token验证问题
- 我这里是想调用自己部署的superset的接口,然后要模拟登录,先拿token,然后拿csrf_token
- csrf_token的响应头里带有Cookie: session=eyJjc3JmX3Rva2VuIjoiMzk4ZGE0MzdmNjc3YjgyMDUxNzQxYzNmZThlODA3YTM0MzM0NjdhNCJ9.YhWNzQ.Qwno6zWEUYcpSjatBc3wA7dkmOo; HttpOnly; Path=/; SameSite=Lax (就是类似e开头的token)
- 最后调用模拟登陆接口,请求头里带上面这个Cookie,请求体里带用户名密码和csrf_token,用POSTMAN请求,可以模拟登录成功,且响应头里会返回全新的Cookie: session=.eJwlz0mKQkEQBNC71NpFDTlUeZlPVg7YtCj8rxvFu3dJLwPiQcQ7bbH7cUnnx_70U9p-LJ0TDOvEsxQB1VaJhLTlZh5QslTwPlAyNC8ezXLgHGQsxQdb4Fd3XlxV0EIaj44AAUiELlR7USYeFB4KGIE-oFuwY2m1d_V0SnrssT3uv3777uEAyzNCVnnyMAf3qjp6FQqsea69dfblrneVqy_zuqz0PHz_v1TS5w-ApURn.YhWYEg.oo_bLZdcc5_iH214fufM-PQaykM
- 这个Cookie-session的值特点是点号开头,之后有这个cookie,浏览器就判断是登录状态了,很多接口就可以调用。
- 关键是,这个步骤,我在POSTMAN和浏览器都可以成功,但是唯独在IDEA代码里无法成功,就算把代码里执行到第二步返回的csrf_token和cookie放在清缓存后的POSTMAN中也能生效,请问各位POSTMAN执行这最后一步调用做了什么额外的事情吗?还有这个session的生成机制是什么规范吗?
回答:
响应里 Set-Cookie 头的数据 和 请求头的 Cookie 的格式不一样,可能不能直接用
HTTP库的debug日志打开,应该能看到发的请求详情,和postman里的比对一下找一下哪里不同
以上是 关于POSTMAN中的一些session和csrf_token验证问题 的全部内容, 来源链接: utcz.com/p/944242.html