使用Laravel提交POST请求出现The page has expired due to inactivity错误

2023-05-16

使用Laravel提交POST请求出现The page has expired due to inactivity. Please refresh and try again.

问题:

提交POST请求,出现如下错误:

The page has expired due to inactivity. 

Please refresh and try again

这是由于在Laravel框架中有此要求:

任何指向 web 中 POST, PUT 或 DELETE 路由的 HTML 表单请求都应该包含一个 CSRF 令牌(CSRF token),否则,这个请求将会被拒绝。

解决办法1: 加上 CSRF token

<form method="POST" action="/profile">
{{ csrf_field() }}
    ...
</form>

也可以最新写法

<form method="POST" action="/profile">
    @csrf
    ...
</form>

如果是AJAX提交:

在页面头部加上csrf-token:

<meta name="csrf-token" content="{{ csrf_token() }}">

提交headers中增加 X-CSRF-TOKEN:

$.ajaxSetup({
    headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    }
});

解决办法2: 移除 CSRF token

也可以在指定页面移除CSRF保护:

/app/Http/Middleware/VerifyCsrfToken.php

<?php

namespace App\Http\Middleware;

use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as Middleware;

class VerifyCsrfToken extends Middleware
{
    /**
     * The URIs that should be excluded from CSRF verification.
     *
     * @var array
     */
    protected $except = [
        'stripe/*',
        'http://example.com/foo/bar',
        'http://example.com/foo/*',
    ];
}

参考链接:

http://blog.csdn.net/qq_37107603/article/details/78891628
https://laravel.com/docs/5.6/csrf#csrf-introduction

[END]

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用Laravel提交POST请求出现The page has expired due to inactivity错误 的相关文章

  • Laravel 通知监听器在实现队列时没有用

    Laravel 版本 5 5 PHP 版本 7 1 根据文档https laravel com docs 5 5 notifications https laravel com docs 5 5 notifications notifica
  • 无法访问视图内的 Blade 组件变量

    我在 Laravel 中遇到了这个非常奇怪的问题 我遇到一个问题 我的组件视图之一无法读取其类中定义的变量 这有点奇怪 因为我的项目中运行了几个组件 除了这个之外 它们都工作正常 所以我创建了一个新的 Laravel 项目来测试一些东西 想
  • Curl,发布当前时间

    我每小时使用 cronjob 我在 Mac 上 触发此命令 usr bin curl s data gr 0123 press OK http www myurl com myphp php gt dev null 有没有办法以 HH MM
  • Cakephp 验证后,所有表单字段都为空,并出现表单错误

    我有问题 我尝试填写表单 然后单击提交按钮 然后它显示表单错误 但所有文本框字段都变为空白 并且可以显示表单错误 我希望它变得与验证之前相同的值 就像我不想在验证后清除 清空值一样 我做了这样的事情 在视图中 div class regfo
  • Laravel 输入:get() 不起作用

    我正在尝试在 Laravel 4 中使用 post 函数 我的表单有许多字段 在提交时 会转到控制器中的 post 函数 问题是 表单中的字段名称之间有空格 例如 Type 1 是输入的名称 中间有一个空格 现在 当我尝试通过执行以下操作来
  • 结合 codeigniter 和 laravel

    我在用着codeigniter框架 但我想使用的功能laravel像下面的代码这样的框架 我可以打印变量而无需 Hello name 我能怎么做 Codeigniter 是一个 PHP 框架 Laravel 也是 php 框架 而这两者并不
  • Laravel 5.2 升级 - 找不到类 AuthServiceProvider

    我目前正在花时间将我的项目从 Laravel 4 2 升级到 Laravel 5 2 经过很多麻烦 我设法让 5 1 版本正确运行 因此我按照官方文档中所述开始了 5 1 到 5 2 的过程 https laravel com docs 5
  • 如何接收在 PHP 中使用“application/octet-stream”发送的 POST 数据?

    这就是我正在处理的事情 我们的一个计划有一个支持表格 用户可以使用它来请求支持 此表单的作用是 它向 PHP 脚本执行 HTTP POST 请求 该脚本应该收集信息并将其转发到支持电子邮件地址 POST 请求包含三个类型的文本字段Conte
  • fgets 和 fread 之间的区别

    我有以下代码 include
  • 如何在 Laravel 中使用数据库进行邮件设置

    我想让用户远离编辑配置文件 所以我在管理面板中制作了 Web 界面 用于设置邮件服务器 用户名 密码 端口 加密 我在 Laravel 4 2 中工作得很好 但是现在当应用程序被重写为 Laravel 5 时 出现错误 Class Sett
  • 如何在使用 OR 运算符时使用高级 where 子句

    我将如何生成一个查询 显示 user id 1 谁是俱乐部成员 主题是足球 网球或板球 id user id member football tennis cricket 1 1 Yes 1 NULL NULL 2 1 Yes NULL N
  • 拉维尔 |如何使用多个属性执行搜索

    我正在创建属性网站 并且正在使用多个属性进行搜索 但问题是在搜索控制器中我有非常大的代码并且非常难以处理 laravel 中是否存在其他解决方案 list property Listing property where property t
  • 检查一个类是否是 Laravel 5 中的 Model

    我在 Laravel 5 2 中有这段代码 用于检查给定的数据库表名称 what 是否有自己的 Model public function manage what model Str studly Str singular what if
  • 如何使用 eloquent/fluent 从单个查询中更新多行?

    我正在学习如何使用 eloquent fluent 从单个查询中插入多行我在这里找到了答案 https stackoverflow com questions 29723865 how to insert multiple rows fro
  • Laravel 查询生成器 - 高级条件子句(可选参数)

    我需要带有接受可选参数的查询生成器的子句 例如 请考虑以下情况 我们有三个搜索字段 产品标题 公司名称和位置 邮政编码 城市或州 2 3 8 种可能性 该位置与 OR 连接 WHERE location postal code LIKE O
  • 针对 Laravel 后端的 Angular Auth

    我正在使用 Laravel 创建一个应用程序 并构建一个小型内部 API 来连接到 Angular 前端 我的身份验证工作正常 但想确保这是一种可接受的用户登录方式 并确保一切都是安全的 会话控制器 public function inde
  • 如何使用 Laravel 查询生成器在 WHERE 条件周围添加括号

    我使用 Laravel 查询构建器根据用户的过滤器选择动态过滤数据 query DB table readings foreach selections as selection query gt orWhere id selection
  • Laravel Eloquent - 附加与同步

    有什么区别attach and sync 在 Laravel 4 的 Eloquent ORM 中 我试图环顾四周 但什么也没找到 附 处理多对多关系时插入相关模型 不需要数组参数 Example user User find 1 user
  • Laravel Eloquent ORM 事务

    Eloquent ORM 非常好 尽管我想知道是否有一种简单的方法可以像 PDO 一样使用 innoDB 设置 MySQL 事务 或者我是否必须扩展 ORM 才能实现这一点 你可以这样做 DB transaction function 闭包
  • 社交登录重复帐户冲突

    我正在制作一个新应用程序 除了常规电子邮件 密码注册之外 还需要多个社交注册 但是有一种特殊情况可能会导致数据完整性问题 例子 用户在 Facebook 上注册 但没有收到任何电子邮件回复 我在数据库中创建一个用户 将电子邮件和密码设置为

随机推荐