public function request($method, $requestName, $params) { if ($this->auth()) { foreach ($this->cookieContainer->getCookies() as $cookieName => $cookieValue) { $this->_curl->setCookie($cookieName, $cookieValue); } $url = 'https://' . $this->_subdomain . '.amocrm.ru/private/api/v2/json/' . $method; $result = $requestName == 'POST' ? $this->_curl->post($url, $params) : $this->_curl->get($url, $params); $code = $this->_curl->httpStatusCode; foreach ($this->_curl->getResponseCookies() as $cookieName => $cookieValue) { $this->cookieContainer->add($cookieName, $cookieValue); } if ($code != 200) { if ($code == 204) { return []; } $this->lastError = $result; return false; } return $result; } }
/** * @author mohuishou<*****@*****.**> * @return array */ public function loginJwc() { $this->_curl->setOpt(CURLOPT_FOLLOWLOCATION, true); $this->_curl->setOpt(CURLOPT_ENCODING, 'gzip'); $this->_curl->setCookieFile(__DIR__ . '/../cookie/college-' . $this->_uid . '.cookie'); $this->_curl->get($this->_url_login_jwc); if ($this->_curl->error) { echo 'Error: ' . $this->_curl->errorCode . ': ' . $this->_curl->errorMessage; } else { $this->_jwc_cookie = $this->_curl->getResponseCookies(); return $this->_jwc_cookie; } }