- 特定のルートでCSRFチェックを無効にする方法:
CSRFチェックを無効にする必要がある特定のルートがある場合は、そのルートの定義で
withoutMiddleware
メソッドを使用します。例えば、以下のようなコードになります:
Route::post('/example', 'ExampleController@handle')->withoutMiddleware(['csrf']);
- グローバルにCSRFチェックを無効にする方法:
全てのルートで一時的にCSRFチェックを無効にするには、
App\Http\Middleware\VerifyCsrfToken
ミドルウェアを無効にする必要があります。App\Http\Kernel
クラスの$middleware
プロパティにあるVerifyCsrfToken
ミドルウェアをコメントアウトするか、削除します。以下は例です:
// app/Http/Kernel.php
protected $middleware = [
// ...
// \App\Http\Middleware\VerifyCsrfToken::class,
];
<form method="POST" action="/example">
@csrf
<!-- フォームの内容 -->
</form>
これらの方法を使用すると、LaravelのCSRFチェックを一時的に無効にすることができます。ただし、セキュリティ上のリスクを最小限に抑えるために、CSRFチェックを必要な場所で有効にすることをお勧めします。