💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
在lumen的控制器中我们验证表单参数,如: ~~~ public function store(Request $request) { $this->validate( $request, ['name' =>'required'], ['name.required' => '请填上你的大名'] ); } ~~~ 如果未通过,会返回这样格式的json响应 ~~~ { "name": [ "请填上你的大名" ] } ~~~ 而我们开发 API 通过返回的响应消息不是这样的,这时候我们就可以通过在\App\Http\Controllers\Controller重写throwValidationException方法实现自定义消息。比如我就重写成这样子。 ~~~ protected function throwValidationException(Request $request, $validator) { $response = [ 'code' => 400, 'msg' => $validator->errors()->first(), 'data' => [] ]; throw new ValidationException($validator, $response); } ~~~ 这里最重要的就是抛出了一个ValidationException异常,后面会说。可以看到主要就是通过验证器,获取错误消息,自己构造了一个响应数组。这时候返回的消息就变成了: ~~~ { "code": 400, "msg": "请填上你的大名", "data": [] } ~~~ https://laravel-china.org/index.php/articles/7260/custom-form-exception-return-message-in-lumen