/** * @param Message\Request $request * @return \Psr\Http\Message\ResponseInterface */ protected function sendHttpRequest(Message\Request $request) { $data = $request->toArray(); if (empty($data['signature'])) { $data['signature'] = $this->signature->simpleSign($data); } $url = $this->buildUrl($request->getEndpoint(), $data); $headers = ['Connection' => 'keep-alive', 'Expect' => '', 'Content-Type' => 'application/json', 'Accept' => 'application/json;charset=UTF-8']; $body = $request->isMethodGet() ? NULL : json_encode($data); return $this->httpClient->request($request->getMethod(), $url, $headers, $body); }
/** * @param Signature $signature * @throws SigningException * @return Response */ public function verify(Signature $signature) { if ($signature->verifyResponse($this->data, $this->data['signature']) !== TRUE) { throw SigningException::fromResponse($this); } return $this; }