2016-04-06 12 views
0

私はAuthミドルウェアによって保護される必要があるルートのグループを持っています。私は標準のAuthフィルタを使用します。Laravel 5ポストリクエストでcsrfの後に認証ミドルウェアが動作する

GETリクエストでうまく動作しますが、POSTリクエストを行うと、トークンの不一致例外が表示されます。私は、CSRFミドルウェアは認証前に動作すると思います。これらのフィルタの順序を変更するには?私はajax-requestからリダイレクトを行うためにUnauthorized例外を参照する必要があります。

答えて

0

正常に動作します後 ウェブミドルウェアのための宣言があり、たとえば

のためのリクエストフォームの内側
<form method="POST"> 
    <input type="hidden" name="_token" value="{!! csrf_token() !!}"> 
    blah blah blah ... 
    </form> 

を、このいずれかを書きます。コードをデバッグするために一時的に無効にすることができます。

Webミドルウェアグループには、CSRF注入からPOST要求への防止のためにVerifyCsrfToken::classが含まれています。 POST要求中にcsrf_tokenをフォームに含めると、フォームの不一致エラーが解決されるはずです。

<input type="hidden" name="_token" value="{!! csrf_token() !!}"> 
0

あなたの質問から得られる問題は、POSTフォームを送信するときです。したがって、laravelのpost形式では、トークンのセキュリティが必要です。これは、要求を送信しようとapp/Http/Kernel.php

関連する問題