Ajax LARAVEL 419 POST 错误已解决
当尝试在没有正确的 CSRF 令牌验证的情况下发出 Ajax POST 请求时,通常会发生此错误。 Laravel 实现了 CSRF 令牌保护,以防止来自外部源的恶意请求。
问题:
对 /company 端点进行 Ajax 调用时遇到 POST 错误。
解决方案:
要解决此问题,您需要在 Ajax 请求中包含 CSRF 令牌。您可以通过将以下代码片段添加到 Ajax 调用中来完成此操作:
$.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } });
这会将生成的 CSRF 令牌添加到 Ajax 请求的标头中,确保 Laravel 可以验证请求是否来自经过身份验证的用户。
说明:
Laravel 会自动为每个活动用户会话生成唯一的 CSRF 令牌。此令牌存储在 HTML 文档中的元标记中:
<meta name="csrf-token" content="your-generated-token" />
进行 Ajax 调用时,CSRF 令牌必须与存储在元标记中的令牌匹配。如果不匹配,Laravel 将拒绝请求并返回 419 错误。
替代解决方案:
如果您想从 CSRF 令牌验证中排除某些 URI 路径,您可以将它们添加到VerifyCSRFToken中间件中的以下数组中:
protected $except = [ '/route_you_want_to_ignore', '/route_group/*' ];
以上是如何使用 Laravel 修复 Ajax 请求中的 419 POST 错误?的详细内容。更多信息请关注PHP中文网其他相关文章!