@csrf 在 Laravel 5.4 中不工作
@csrf is not working in Laravel 5.4
我正在学习 Laravel 上的教程,我注意到我无法使用 @csrf 命令,但其他人可以有效地使用它。但是,我可以使用 {{ csrf_field() }} 作为 csrf 令牌。我想知道为什么。谢谢
这是我使用@csrf 命令的截图:Image here
这是我的 index.blade.php
<form action="{{ route('contact.store') }}" method="post">
@csrf
<div class="col-md-6 mb-3">
<label for="username">Username:</label>
<input class="form-control" type="text" name="name" id="username" placeholder="Username | Email | Phone Number" required>
<div class="invalid-feedback">
Please provide a username
</div>
</div>
<div class="col-md-6 mb-3">
<label for="password">Password:</label>
<input class="form-control" type="password" name="name" id="password" placeholder="" required>
<div class="invalid-feedback">
Please provide a password
</div>
</div>
<div class="col-md-6 mb-3">
<input type="submit">
</div>
</form>
@csrf 参数以 5.6
出现
你需要使用csrf_field()
方法来代替@csrf
有关更多信息,请查看 the docs
据我所知,5.4中没有@csrf,必须使用
{{ csrf_field() }}
相反,@csrf 在 laravel 5.6
中可用
Laravel 5.4 仅可用
参考这个 link
https://laravel.com/docs/5.4/csrf
{{ csrf_field() }}
并且Laravel 5.6可用
参考这个 link
https://laravel.com/docs/5.6/csrf
@csrf
如果您使用laravel框架版本5.6、5.5或低于5.5版本
你应该写 {{ csrf_field() }}
,但是如果你使用 laravel 框架版本 5.7, 5.8
或更大的版本5.7 你应该写 @csrf
Laravel 5.5, 5.6 => write {{ csrf_field() }}
Laravel 5.7, or bigger than 5.7 => write @csrf
我正在学习 Laravel 上的教程,我注意到我无法使用 @csrf 命令,但其他人可以有效地使用它。但是,我可以使用 {{ csrf_field() }} 作为 csrf 令牌。我想知道为什么。谢谢
这是我使用@csrf 命令的截图:Image here
这是我的 index.blade.php
<form action="{{ route('contact.store') }}" method="post">
@csrf
<div class="col-md-6 mb-3">
<label for="username">Username:</label>
<input class="form-control" type="text" name="name" id="username" placeholder="Username | Email | Phone Number" required>
<div class="invalid-feedback">
Please provide a username
</div>
</div>
<div class="col-md-6 mb-3">
<label for="password">Password:</label>
<input class="form-control" type="password" name="name" id="password" placeholder="" required>
<div class="invalid-feedback">
Please provide a password
</div>
</div>
<div class="col-md-6 mb-3">
<input type="submit">
</div>
</form>
@csrf 参数以 5.6
出现你需要使用csrf_field()
方法来代替@csrf
有关更多信息,请查看 the docs
据我所知,5.4中没有@csrf,必须使用
{{ csrf_field() }}
相反,@csrf 在 laravel 5.6
中可用Laravel 5.4 仅可用 参考这个 link https://laravel.com/docs/5.4/csrf
{{ csrf_field() }}
并且Laravel 5.6可用 参考这个 link https://laravel.com/docs/5.6/csrf
@csrf
如果您使用laravel框架版本5.6、5.5或低于5.5版本
你应该写 {{ csrf_field() }}
,但是如果你使用 laravel 框架版本 5.7, 5.8
或更大的版本5.7 你应该写 @csrf
Laravel 5.5, 5.6 => write {{ csrf_field() }}
Laravel 5.7, or bigger than 5.7 => write @csrf