1 つのルートに複数のミドルウェアを含めることさえ可能ですか。現在、auth:web でデフォルト設定されている auth のミドルウェアを使用して、Web アプリで ajax リクエストを作成しています。
Route::post('/user/postAuthUserInfoAjax', [
'uses' => 'UserController@postAuthUserInfoAjax',
'middleware' => ['auth'],
]);
また、API アクセス トークン (laravel パスポートを使用) を持つモバイル アプリで、同じルートにアクセスできるようにユーザーを認証することも必要です。そのためには、ミドルウェアで「auth:api」を指定するだけです。
Route::post('/user/postAuthUserInfoAjax', [
'uses' => 'UserController@postAuthUserInfoAjax',
'middleware' => ['auth:api'],
]);
唯一の問題は、複数のミドルウェアを指定できないことです。「auth:api」または「auth:web」のいずれかを使用できますが、両方を使用することはできません。各 ajax リクエストに対して 1 つは Web アプリ用、もう 1 つは API リクエスト用の 2 つのルートを持つことができると思いますが、1 つのルートだけを使用できれば、はるかに優れています。
試してみましたが、うまくいきません。誰もこれを行う方法を知っていますか? それは可能ですか
Route::post('/user/postAuthUserInfoAjax', [
'uses' => 'UserController@postAuthUserInfoAjax',
'middleware' => ['auth:web','auth:api'],
]);