private function send($requestType, $url, $data = null, $extraHeaders = []) { $extraHeaders = array_merge($this->extraHeaders, $extraHeaders); $request = new \Curl\Request($this->baseUrl . $url); $request->timeout = $this->timeout; $request->headers = $extraHeaders; $request->requestType = strtoupper($requestType); if ($data) { $request->headers['Content-Type'] = 'application/json'; $request->data = json_encode($data); } $response = $request->exec(); if ($response->contentType == 'application/json') { return json_decode($response->data); } else { return $response->data; } }