2017-08-02 194 views
0

我正在使用Laravel 5.4框架創建API。使用JWT令牌時,我輸入錯誤的令牌時無法捕獲InvalidTokenException。請參閱我的代碼和建議。謝謝!Laravel - 無法捕捉Tymon JWT TokenInvalidException

$token = $request->token; 
    try{ 
     $user = JWTAuth::toUser($token); 
    }catch(\Tymon\JWTAuth\Exceptions\TokenInvalidException $e){  //NOT CATCHING... 
     $error = 'Invalid token'; 
     return response()->json(compact('error')); 
    } 
+0

是否是異常的正確命名空間 – DestinatioN

+0

@DestinatioN是的,它是正確的命名空間。已經搜索並得到了相同的結果捕捉異常 – rayrayray9151

+0

也許你導入了異常,所以你可以刪除除了異常的名字 – DestinatioN

回答

0

它可能會拋出一個不同的異常,然後你試圖捕捉。 嘗試使用任何異常來捕捉它,並查看它是否有效。如果是這樣,命名空間很可能是不正確的。

$token = $request->token; 
    try{ 
     $user = JWTAuth::toUser($token); 
    }catch(\Exception $e){  
    $error = 'Invalid token'; 
    return response()->json(compact('error')); 
    } 
+0

嗨帕特里克,儘管使用一般的例外,我仍然無法抓住它。這確實很奇怪 – rayrayray9151

+0

這很奇怪。你是否100%確定在這個地方拋出異常?不在代碼中的其他地方? –