我有一个基本的拉里/瓦埃与圣殿的执行。问题是直截了当的:
我正在发送一个令牌请求和登录用户。服务器发送一个新的令牌。Axios添加此令牌,但添加另一个始终相同且过期的令牌。
代码:
await APIClient.get("/sanctum/csrf-cookie")
return APIClient.post("/api/user/login", payload);DevTools/Network选项卡:
response-headers具有有效的request-headers,SET-COOKIE属性具有XSRF-TOKEN (旧过期值) ; laravel_session ; XSRF-TOKEN (新有效值)H 214f 215我的问题是旧的价值。在我的代码中根本没有添加这个的位置。
这是我的axios客户端
const APIClient = axios.create({
baseURL: constants.PATHS.url,
withCredentials: true, // required to handle the CSRF token
});非常感谢你的帮助。
发布于 2022-08-26 11:02:26
我找到了一个真正的解决办法。每当您注销时,您都应该清除文档的cookie,这样,令牌就永远是新的,旧的不能复制。我见过这种错误在某些情况下会发生。
发布于 2022-08-26 10:55:28
对不起,我不太明白您的问题,您不知道如何将(旧的过期值)或(新的有效值)添加到axios的标题中吗?我建议使用axios作为窗口的属性。更改其属性更容易:
window.axios.defaults.headers.common['token'] = "aaa"; //add a headerhttps://stackoverflow.com/questions/73499475
复制相似问题