/** * 发出请求 * @param $url * @param $params * @param $cookie * @param string $method * @param string $protocol * @return \Simple\Curl\Response\ResponseValue * @throws DeepInException */ private function makeRequest($url, $params, $cookie, $method = "POST", $protocol = 'http') { $request = new Request($url, $method, RequestBodyEncodeType::JSON); $request->addHeaders(array("Expect" => "", "Access-Token" => $this->hookClient->getToken(), "Content-Type" => "application/json")); foreach ($params as $key => $val) { $request->setParam($key, $val); } foreach ($cookie as $key => $val) { $request->setCookie($key, $val); } $curl = new Curl($request); $response = $curl->makeRequest(new HookResponseValue()); if ($response->getErrorCode() != 0) { throw new DeepInException($response->getErrorMsg()); } if (in_array(intval($response->getHttpCode() / 100), array(4, 5))) { throw new DeepInException("hook server返回状态码为" . $response->getHttpCode()); } return $response->getResponseValue()->getData(); }