Laravel 5 を使用して RESTful アプリケーションに取り組んでおり、例外をキャッチして適切な応答を生成しようとしています。すべての API 応答が JSend JSON 形式になるように、 tymondesigns/jwt-authパッケージも使用しています。
現在TokenExpiredException
、指定されたトークンの有効期限が切れたときに発生する をキャッチしようとしています。だから私はこれを試しましたHandler.php
:
if($e instanceof TokenExpiredException)
{
return jsend()->error()
->message("Token Expired")
->code(403)
->data([null])
->get();
}
しかし、私はまだこの例外をキャッチして JSON 応答を返すことができません。次のような他の例外についてはこれを行うことができますが:
if ($e instanceof ModelNotFoundException) {
$e = new NotFoundHttpException($e->getMessage(), $e);
return jsend()->error()
->message("404 Model Not Found")
->data([null])
->get();
}
と:
if ($this->isHttpException($e))
{
if($e instanceof NotFoundHttpException)
{
return jsend()->error()
->message("404 Route Not Found")
->data([null])
->get();
}
return $this->renderHttpException($e);
}
Laravelで他の例外を処理するには?