当我try 提交表格(在本例中为注册表格)时,我在新安装的laravel 11
和vue
中遇到以下错误.
419 |页面过期
我已经判断了这question,是的,我的登记表中确实有@csrf
,
<meta name="csrf-token" content="{{ csrf_token() }}">
Steps to reproduce
- 我安装了一个新的
laravel 11
个实例:
composer create-project laravel/laravel test
cd test/
- 我加了
laravel/ui
包
composer require laravel/ui
- 我添加了vue和auth ui
php artisan ui vue --auth
它给了我一个警告:
[Controller. php]文件已存在.你想换掉它吗?(是/否)[是]
我输入了yes
,然后输入了[Enter]
- 我安装了
npm
个包并初始化了vite
个包
npm install && npm run dev
- 已初始化开发服务器并try 注册
php artisan serve
Edit
还对同一repo
个执行了其他步骤.我们使用mongodb
,因此我们还添加了Mongodb配置.
- 安装了
laravel/mongodb
包
composer require mongodb/laravel-mongodb
- 在
config/database.php
中添加了如下配置:
...
'mongodb' => [
'driver' => 'mongodb',
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', 27017),
'database' => env('DB_DATABASE', 'assets'),
'username' => env('DB_USERNAME', ''),
'password' => env('DB_PASSWORD', ''),
'options' => [
'database' => env('DB_AUTHENTICATION_DATABASE', 'admin'),
],
],
...
- 更新了. dev文件,如下所示:
DB_CONNECTION=mongodb
DB_HOST=127.0.0.1
DB_PORT=27017
DB_DATABASE=testdb
DB_USERNAME=
DB_PASSWORD=
...
我希望有人有解决方案.
NB我try 安装laravel 10
并执行相同的过程,它工作得很完美.laravel 11
发生了什么变化?任何帮助都是感激的.
Edit
以下是我的bootstrap/app.php
的内容
<?php
use Illuminate\Foundation\Application;
use Illuminate\Foundation\Configuration\Exceptions;
use Illuminate\Foundation\Configuration\Middleware;
return Application::configure(basePath: dirname(__DIR__))
->withRouting(
web: __DIR__.'/../routes/web.php',
commands: __DIR__.'/../routes/console.php',
health: '/up',
)
->withMiddleware(function (Middleware $middleware) {
//
})
->withExceptions(function (Exceptions $exceptions) {
//
})->create();
和register.blade.php
<form method="POST" action="{{ route('register') }}">
@csrf
<div class="row mb-3">
// Rest of code