私はPassportトークン認証を使用するLaravelプロジェクトを構成しています。すべてが機能しているように見えますが、auth:api
ミドルウェアが失敗すると、クライアントには200
のステータスとレスポンス本文にHTMLの束が返されます。代わりに、私は401
のステータスで応答します。LaravelとPassportを使用した認証に失敗した場合、ステータスコード401で応答しますか?
Laravel Passportのソースまたはドキュメントで、このようなことを行うことについて何も見つかりません。私はミドルウェアのソースを見つけることさえできません。
私のテストルート:Route::get('/protected', function() {
return response()->json([
'success' => true
]);
})->middleware('auth:api');
のconfig/auth.phpミドルウェアで
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'passport',
'provider' => 'appUsers',
],
],
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\Models\User::class,
],
'appUsers' => [
'driver' => 'eloquent',
'model' => App\Models\AppUser::class
],
],
私はミドルウェアを書いていません。私はLarave/Passportが提供するミドルウェア( 'auth:api')を使用しようとしています。 – SimpleJ
ソースに変更したくない場合は、ミドルウェアを拡張できます。 –
'auth'ミドルウェアには1つのメソッドしかありません。私はそのメソッドを上書きして完全に書き直す必要はありませんか? – SimpleJ