/** * Обрабатыват результат запроса с сервиса. * * @param \Phasty\Server\Http\Response $response * * @return mixed $result Результат выполнения */ public static function processResponse($response) { set_error_handler(function () { }); $body = json_decode($response->getBody(), true); restore_error_handler(); if (is_null($body)) { $result = new \Exception("Service response is not json:\n " . $response->getBody()); } elseif ($response->getCode() > 299) { $result = new \Exception($body["message"], $response->getCode()); } else { $result = $body["result"]; } return $result; }
public function dispatch(Message $request) { $request->on("read-complete", [$this, "route"]); $request->on("error", function ($event, $request) { $response = new Response(); $response->setWriteStream($request->getReadStream()); $response->setCode(400); $response->setBody("Bad request"); $response->on("sent", [$request, "dispatched"]); $response->send(); }); }
public function getResponseObject(Stream $stream) { $request = new Http\Response(); $request->setWriteStream($stream); return $request; }