HttpException.php 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <?php
  2. /*
  3. * This file is part of the overtrue/wechat.
  4. *
  5. * (c) overtrue <i@overtrue.me>
  6. *
  7. * This source file is subject to the MIT license that is bundled
  8. * with this source code in the file LICENSE.
  9. */
  10. namespace App\Libs\TikTok\Kernel\Exceptions;
  11. use App\Libs\TikTok\Kernel\Support\Collection;
  12. use Psr\Http\Message\ResponseInterface;
  13. /**
  14. * Class HttpException.
  15. *
  16. * @author overtrue <i@overtrue.me>
  17. */
  18. class HttpException extends Exception {
  19. /**
  20. * @var ResponseInterface|null
  21. */
  22. public $response;
  23. /**
  24. * @var ResponseInterface|Collection|array|object|string|null
  25. */
  26. public $formattedResponse;
  27. /**
  28. * HttpException constructor.
  29. *
  30. * @param string $message
  31. * @param ResponseInterface|null $response
  32. * @param null $formattedResponse
  33. * @param int|null $code
  34. */
  35. public function __construct($message, ResponseInterface $response = null, $formattedResponse = null, int $code = null) {
  36. parent::__construct($message, $code);
  37. $this->response = $response;
  38. $this->formattedResponse = $formattedResponse;
  39. if ($response) {
  40. $response->getBody()->rewind();
  41. }
  42. }
  43. }