嘗試使用Laravel 開發RESTful API 時,您可能會在POST 和PUT 上遇到419 狀態程式碼方法。此問題源自於 Laravel 的 CSRF 保護,旨在防止跨站請求偽造 (CSRF) 攻擊。
Laravel 的 web.php 路由預設受 CSRF 令牌保護。 CSRF 令牌是一種確保請求來自合法來源而不是來自惡意使用者的方法。當 POST 或 PUT 請求不包含正確的 CSRF 令牌時,Laravel 傳回 419 狀態碼。
如果您使用web.php 路由作為API端點,您可以透過將它們新增至VerifyCsrfToken中間件的$ except屬性中將它們排除在CSRF保護之外。
如果您是使用 Laravel 5.4 或更高版本,建議使用 api.php 檔案作為 API 路由。 api.php 中定義的路由會自動排除在 CSRF 保護之外。
您可以對路由組內的特定方法停用 CSRF 保護。
透過從 CSRF 保護中排除路由或針對特定方法禁用它,可以解決 419 狀態碼問題。請記住僅在必要時停用 CSRF 保護,因為它是使用者提交表單的重要安全措施。
以上是如何解決 Laravel 中 POST 和 PUT 方法因 CSRF 保護而出現的 419 狀態碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!