/** * @param KFormRequest $request * @return \Symfony\Component\HttpFoundation\Response */ protected function _handle(KFormRequest $request) { try { $this->action($request); } catch (APIError $error) { $this->response->pushError($error); } catch (\Exception $e) { $this->response->pushException($e); } return $this->response->getResponse(); }
/** * @param APIResponse $apiResponse * @return \Illuminate\Http\JsonResponse */ public function translate(APIResponse $apiResponse) { $output = array('errors' => array(), 'debug' => $apiResponse->getDebug(), 'results' => $apiResponse->getResults(), 'flag' => 0); $code = 200; if ($apiResponse->isOK()) { //没有错误 $output['flag'] = 1; } else { //有错误 $output['flag'] = 0; foreach ($apiResponse->getErrors() as $error) { if ($error instanceof APIError) { $output['errors'][$error->getCode()] = $error->getMessage(); $code = $error->statusCode(); } elseif ($error instanceof \Exception) { $output['errors'][$error->getCode()] = $error->getMessage(); $code = 422; } } } return Response::json($output, $code, $this->headers, JSON_UNESCAPED_UNICODE); }