我在我的基本controller.php中有一个方法,它将我所有的响应格式化为我喜欢的样子;
public function sendError($error, $errorMessages = [], $code = 404)
{
$response = [
'success' => false,
'message' => $error,
];
if (!empty($errorMessages)) {
$response['data'] = $errorMessages;
}
return response()->json($response, $code);
}
如果我从另一个控制器调用它,我只需要调用
return $this->sendError('Validation Error', $validator->errors(), 400);
但是我也在使用JWT-Auth的中间件。有没有办法从中间件内部调用这个控制器方法,而不是重写方法?
3条答案
按热度按时间jckbn6z71#
在中间件中通过创建你的控制器来尝试这个
yvfmudvl2#
首先获取现有示例:
然后像往常一样打电话,在OP的情况下:
注意以上是在Laravel 6.x版本中测试的。
vql8enpb3#
在中间件中
在Laravel 9上测试