Laravel - 如何使CSRF令牌与HTML Cache一起使用?

问题描述 投票:0回答:1

据我所知HTML缓存会生成一个静态html文件,但每次加载页面都需要刷新CSRF,那么有没有办法让CSRF令牌与HTML Cache一起工作?

laravel csrf-protection page-caching
1个回答
0
投票

由于CSRF令牌通常包含在表单输入中,因此页面缓存将使每个用户随机化该输入的能力无效。

您可以使用ajax将数据加载到缓存页面。

一种解决方案是通过ajax将表单的整个HTML加载到缓存页面中。另一种解决方案是通过ajax请求将令牌加载到表单中。这可能是您可以在您的网站中编程,检索令牌并在页面加载时插入所有表单或将其添加到表单提交过程中的内容。这个article讨论了通过ajax请求获取CSRF令牌的含义。

© www.soinside.com 2019 - 2024. All rights reserved.