我以两种方式做到了。当我直接传递Http状态代码时,它可以工作,但是当我编写$ exception-> getStatusCode()时,我遇到了错误。我不知道这是怎么回事。
第二种方法工作正常,但 我想要的是,它会自动生成状态代码,而不是具体的。
答案 0 :(得分:0)
状态代码仅适用于http exception
。在其他类型的异常中,您需要使用getCode()
public function render($request, Exception $exception)
{
if ($exception instanceof \HttpException) {
$statusCode = $exception->getStatusCode();
return response()->json('status_code'=>$statusCode);
}
}
答案 1 :(得分:0)
原因是您很可能正在使用v1.0。*,并且在此版本中,异常扩展了JWTException,后者扩展了Exception。它们没有readonly
的实现,因此您不能使用它们。
泰蒙(Tymon)在this link中指出,没有计划针对异常实现HTTP特定行为。