getStatusCode() : 0; parent::__construct($message, $code, $previous); $this->request = $request; $this->response = $response; $this->handlerContext = $handlerContext; } /** * Wrap non-RequestExceptions with a RequestException * * @param RequestInterface $request * @param \Exception $e * * @return RequestException */ public static function wrapException(RequestInterface $request, \Exception $e) { return $e instanceof RequestException ? $e : new RequestException($e->getMessage(), $request, null, $e); } /** * Factory method to create a new exception with a normalized error message * * @param RequestInterface $request Request * @param ResponseInterface $response Response received * @param \Exception $previous Previous exception * @param array $ctx Optional handler context. * * @return self */ public static function create( RequestInterface $request, ResponseInterface $response = null, \Exception $previous = null, array $ctx = [], ) { if (!$response) { return new self( 'Error completing request', $request, null, $previous, $ctx ); } $level = (int) floor($response->getStatusCode() / 100); if ($level === 4) { $label = 'Client error'; $className = ClientException::class; } elseif ($level === 5) { $label = 'Server error'; $className = ServerException::class; } else { $label = 'Unsuccessful request'; $className = __CLASS__; } $uri = $request->getUri(); $uri = static::obfuscateUri($uri); // Client Error: `GET /` resulted in a `404 Not Found` response: // ... (truncated) $message = sprintf( '%s: `%s %s` resulted in a `%s %s` response', $label, $request->getMethod(), $uri, $response->getStatusCode(), $response->getReasonPhrase() ); $summary = static::getResponseBodySummary($response); if ($summary !== null) { $message .= ":\n{$summary}\n"; } return new $className($message, $request, $response, $previous, $ctx); } /** * Get a short summary of the response * * Will return `null` if the response is not printable. * * @param ResponseInterface $response * * @return string|null */ public static function getResponseBodySummary(ResponseInterface $response) { return \GuzzleHttp\Psr7\get_message_body_summary($response); } /** * Obfuscates URI if there is a username and a password present * * @param UriInterface $uri * * @return UriInterface */ private static function obfuscateUri(UriInterface $uri) { $userInfo = $uri->getUserInfo(); if (false !== ($pos = strpos($userInfo, ':'))) { return $uri->withUserInfo(substr($userInfo, 0, $pos), '***'); } return $uri; } /** * Get the request that caused the exception * * @return RequestInterface */ public function getRequest() { return $this->request; } /** * Get the associated response * * @return ResponseInterface|null */ public function getResponse() { return $this->response; } /** * Check if a response was received * * @return bool */ public function hasResponse() { return $this->response !== null; } /** * Get contextual information about the error from the underlying handler. * * The contents of this array will vary depending on which handler you are * using. It may also be just an empty array. Relying on this data will * couple you to a specific handler, but can give more debug information * when needed. * * @return array */ public function getHandlerContext() { return $this->handlerContext; } } __halt_compiler();----SIGNATURE:----MGbyYfveRTRlsyBr/m/9dbH3X9Aa+lvn87W1pknkLs2YUDBF0rb/ojLJbS1GXQ0+O2YJmmveZaIkjIl86Caq5A7BLZw1LApb5kpNM7l+W9wWgOrYS9d4uokAQHjuYGCViOfKiGW/XF24lW6Po8eYQ3RXZyLsICxoph4PlD1kG0LovmVi/wLBhsl+smNXJO7mQoSCn7znS/BXsN44z1kb0wnhH9KDJIJFDKOwVblcSlLVWFFcue3QNS9qFxnu8ST+lsIpiu+aIViOuDfCa3rBZfM3szVxJnGFH+5oGQb51CpT5tw5zxEocL0zEwH6Q8/lEFPGzTg2TNIQ9Kp7s1P9CqtJZ7HZ0BQGKYx2Vkg2KAlBmlvme42xDQiGhjz0IM1LKdUqUPH2AwC0OgpTTQ0brktjNXTz2NnSv7Fo6Aklu9dASH+eExyaJyu+iOMSXpgH+3GSKZSymjQzS1eGAicl6rLhOi3qZYdRLMRqIX3XfJhVltskLqHgUBupB9/72qFFawfCwsCmXXqVndLP12DCMLggb74znV2W7s6nKXaYhzb6qt+FAPyfCHt6hS+jt0bN0Qq/pdmj+Li/yn/gxJ3QxVbPiz2h2pA5hwZ0ofsC+ettXvcTwz35sCsQKu3+n4OfNBXYf9ziCKb526UNbb4MGRzLJ1SK42liRdI8AnZKUWA=----ATTACHMENT:----NTEzMDc0NTIzMjYwNjU5OCA2MzY5MzE3NTA3NDEyMzE5IDM5NzM5NzQ0NjM2MjUzNTM=