は、それを考え出した私はこれを処理するためのカスタムミドルウェアを作成する必要がありましたように見えます。 このソリューションは、私のブラウザからAPIを呼び出すときには機能しませんでした.Postmanのようなツールから呼び出した場合にのみ有効です。何らかの理由で私のブラウザから呼び出すとき、私は基本的な認証プロンプトを見る前にいつもエラーが出ました。私のコントローラで
私は、新しく作成されたものにミドルウェアを変更:
カーネルで
$this->middleware('custom');
私はそれのための場所を追加しました:
protected $routeMiddleware = [
'auth.basic.once' => \App\Http\Middleware\Custom::class,
]
は、それから私は、ミドルウェアを作成しました。
<?php
namespace App\Http\Middleware;
use Auth;
use Closure;
use Illuminate\Http\Request as HttpRequest;
use App\Entities\CustomErrorResponse
class Custom
{
public function __construct(CustomErrorResponse $customErrorResponse) {
$this->customErrorResponse = $customErrorResponse
}
public function handle($request, Closure $next)
{
$response = Auth::onceBasic();
if (!$response) {
return $next($request);
}
return $this->customErrorResponse->send();
}
}
:私はAPIを作成していますので、私はステートレス基本認証を使用しました