Laravel が例外を処理する方法を理解するのに問題があります。次のように、global.php に例外ハンドラを登録しました。
use MyNamespace\Custom\Exceptions\NotAllowedException;
App::error(function(NotAllowedException $exception, $code)
{
die("MyNamespace\Custom\Exceptions\NotAllowedException catched");
});
App::error(function(\Exception $exception)
{
echo "general exception thrown<br/>";
});
コントローラー アクションで、NotAllowedException をスローするようになりました。ただし、奇妙な部分は、最初の Exception がキャッチされ、その後 NotFoundException がキャッチされることです。
したがって、出力は次のようになります。
general exception thrown
MyNamespace\Custom\Exceptions\NotAllowedException catched
例外ハンドラーがスタックしているため、NotAllowedException のみが処理されていると思いました。しかし、私は間違っています。Laravel のエラー処理の概念を誤解していますか、それとも予期しない動作ですか?
別のこと: http 応答ヘッダーを 401 に設定できません。SO にはこの問題に関する他のスレッドがありますが、これまでのところ解決策はありません。誰かがそれについて何か知っていれば、私は感謝します。
あなたの時間とすべての応答に感謝します! 乾杯