diff --git a/README.md b/README.md index c9d423f..736d1fd 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,11 @@ ## Список изменений +21/12/2020 + +- Начиная с 2.1 минимальная версия php 7.3 +- zend-diactoros заменён на laminas-diactoros (laminas-zendframework-bridge) + 23/08/2016 - метод `upload` поддерживает событие `progress`, слушатель принимает `float` значение в процентах. @@ -13,7 +18,7 @@ ## Требования -- PHP 5.5 +- PHP >= 5.6 - Расширение php_curl ## Внести свой вклад в развитие diff --git a/composer.json b/composer.json index d9096b6..4f18b94 100644 --- a/composer.json +++ b/composer.json @@ -11,15 +11,15 @@ } ], "require": { - "php": ">=5.5", - "zendframework/zend-diactoros": "~1.8.4", - "league/event": "2.1.2", + "php": ">=7.3", + "laminas/laminas-diactoros": "^2.5", + "league/event": "^2.2", "php-http/curl-client": "1.4.*", "php-http/message": "^1.2", "php-http/client-common": "^1.1" }, "require-dev": { - "phpunit/phpunit": "~5.6.2" + "phpunit/phpunit": "^9.4" }, "autoload": { "psr-4": { diff --git a/example/image.jpg b/example/image.jpg index 974f2de..5aff37b 100644 Binary files a/example/image.jpg and b/example/image.jpg differ diff --git a/example/manual_request.php b/example/manual_request.php index 05846ae..414ed2f 100644 --- a/example/manual_request.php +++ b/example/manual_request.php @@ -4,6 +4,8 @@ * Пример показывает как нестандартный запрос к API Яндекс.Диска. */ +use Laminas\Diactoros\Request; + require_once __DIR__.'/../vendor/autoload.php'; $token = 'Access Token'; @@ -11,7 +13,7 @@ $disk = new Arhitector\Yandex\Disk($token); // Внимание! В запрос будет передан Access Token -$request = new \Zend\Diactoros\Request('https://cloud-api.yandex.net/v1/disk/resources?path=O2cXW1AEVWI222.jpg', 'GET'); +$request = new Request('https://cloud-api.yandex.net/v1/disk/resources?path=O2cXW1AEVWI222.jpg', 'GET'); $response = $disk->send($request); var_dump($response->getBody()->getContents()); @@ -20,7 +22,7 @@ $resource = $disk->getResource('disk:/O2cXW1AEVWI222.jpg') ->setPreview('100x250'); -$request = new Zend\Diactoros\Request($resource->preview, 'GET'); +$request = new Request($resource->preview, 'GET'); $response = $disk->send($request); header('Content-type: image/jpeg'); diff --git a/src/Client/HttpClient.php b/src/Client/HttpClient.php index 9c64823..52a027c 100644 --- a/src/Client/HttpClient.php +++ b/src/Client/HttpClient.php @@ -101,7 +101,7 @@ public function __destruct() } /** - * Sends a PSR-7 request. + * Sends a PSR-7 request and returns a PSR-7 response. * * @param RequestInterface $request * @@ -110,10 +110,8 @@ public function __destruct() * @throws \RuntimeException If creating the body stream fails. * @throws \UnexpectedValueException if unsupported HTTP version requested * @throws RequestException - * - * @since 1.0 */ - public function sendRequest(RequestInterface $request) + public function sendRequest(RequestInterface $request): ResponseInterface { $responseBuilder = $this->createResponseBuilder(); $options = $this->createCurlOptions($request, $responseBuilder); @@ -218,7 +216,7 @@ protected function createCurlOptions(RequestInterface $request, ResponseBuilder $options[CURLOPT_WRITEFUNCTION] = function ($ch, $data) use ($responseBuilder) { return $responseBuilder->getResponse()->getBody()->write($data); }; - + $options[CURLOPT_HTTPHEADER] = $this->createHeaders($request, $options); if ($request->getUri()->getUserInfo())