2016-09-20 18 views
0

apiをビルドしようとしていますが、なんらかの理由でセッションが必要です。しかし、webミドルウェアを含めると、CSRFのエラーが発生し、もし私ができないのであれば、sessionが起動しています。Laravel 5.3 - CSRFなしでセッションをAPIに追加するには?

これを解決するにはどうすればよいですか?

+1

Laravelに取り組んでいるのは、背中の背中に結ばれた1本の手でボクシングのようなものです! –

答えて

5

app/Http/Kernel.phpにアクセスし、「ミドルウェアグループ」に「セッション」のような独自の名前を追加します。 \ Illuminate \ Session \ Middleware \ StartSession :: class、

必要なルートに「セッション」を割り当てます。

protected $middlewareGroups = [ 
     'web' => [ 
      \App\Http\Middleware\EncryptCookies::class, 
      \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class, 
      \Illuminate\Session\Middleware\StartSession::class, 
      \Illuminate\View\Middleware\ShareErrorsFromSession::class, 
      \App\Http\Middleware\VerifyCsrfToken::class, 
     ], 

     'api' => [ 
      'throttle:60,1', 
     ], 

     'sessions' => [ 
      \Illuminate\Session\Middleware\StartSession::class, 
     ] 
    ]; 

ルート/ api.php

Route::group(['middleware' => ['sessions']], function() { 
    Route::resource(...); 
}); 
-1

[OK]を私は道自分自身を発見した:

  1. API
  2. のルートグループにミドルウェアwebを追加するあなたにはあなたのルートを追加します$except in VerifyCsrfTokenクラス

急速なアプリケーション開発のための多くのもの!

関連する問題