dingo + jwt 搭建後 handler 全域性接收異常的問題

King_Chin發表於2019-10-31

首先,異常丟擲的原因是因為 dingo接收了異常,所以需要註冊到Handler:

AppServiceProvider.php
    // dingo api異常註冊\
    app('api.exception')->register(function (\Exception $exception) {\
      $request = Request::capture();\
      return app('App\Exceptions\Handler')->render($request, $exception);\
    });

之後就是接收異常處理了

Handler.php
    if (\
     ($exception instanceof AuthenticationException)\
    ||\
     ($exception instanceof TokenExpiredException)\
    ||\
     ($exception instanceof TokenBlacklistedException)\
    ) {\
    \
      return response()->json([\
      'code' => 401,\
      'msg' => $exception->getMessage(),\
      ]);\
    }
本作品採用《CC 協議》,轉載必須註明作者和本文連結
Chiin

相關文章