3 回答

TA貢獻1874條經驗 獲得超12個贊
總而言之,您錯過了@csrf。
只需在表單開頭標記行之后添加@csrf 即可。它應該是這樣的:
<form class="singn-form" method="POST" action="{{ route('register') }}">
@csrf
....
</form>

TA貢獻1155條經驗 獲得超0個贊
發生此錯誤的原因是 CSRF 令牌驗證失敗、緩存配置錯誤、權限、會話設置不當。當用戶提交發布請求時會出現此錯誤。您可以通過執行以下操作來修復它:
CSRF 令牌驗證失敗 419 錯誤的最常見原因是 CSRF 令牌失敗??缯菊埱髠卧焓怯煞掌魃傻奈ㄒ坏?、加密的值。這包含在客戶端的 HTTP 請求中。稍后服務器對其進行驗證。如果失敗,則會導致會話過期錯誤。因此,您檢查 Laravel 配置中的 CSRF 設置。
由于緩存導致會話過期錯誤有時,緩存也會導致前端會話過期錯誤。這可以是服務器緩存和瀏覽器緩存。因此,請使用
php artisan cache:clear
.Laravel 文件和文件夾權限 同樣,不正確的文件或文件夾權限也會導致錯誤。通常,Web 服務器需要對 Laravel 文件夾存儲和供應商的寫權限。此外,會話存儲需要寫權限。所以,給權限,
chmod -R 755 存儲
chmod -R 755 供應商
chmod -R 644 引導程序/緩存
Laravel 會話設置 最后但并非最不重要的是,會話設置也會導致 419 錯誤。app/config/session.php 是會話配置文件。檢查一些重要的參數——域和安全。
'domain' => env('SESSION_DOMAIN', null), 'secure' => env('SESSION_SECURE_COOKIE', false), // in case of cookie
這些循序漸進的方法修復了錯誤并使 Laravel 再次工作。

TA貢獻1789條經驗 獲得超8個贊
在 head 部分使用它而不是 @csrf :
<meta name="csrf-token" content="{{ csrf_token() }}">
- 3 回答
- 0 關注
- 311 瀏覽
添加回答
舉報