7

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で他の例外を処理するには?

4

2 に答える 2