From b853433805f4fdfa6c64a74c2e2e8ca1d67b1949 Mon Sep 17 00:00:00 2001 From: Dmitry Arhitector Date: Mon, 21 Dec 2020 18:44:18 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=BE=D0=B4=D0=B4=D0=B5=D1=80=D0=B6?= =?UTF-8?q?=D0=BA=D0=B0=20php=208=20=D0=B8=20=D0=BF=D0=BE=D0=B2=D1=8B?= =?UTF-8?q?=D1=88=D0=B5=D0=BD=D0=B8=D0=B5=20php=20=D0=B2=D0=B5=D1=80=D1=81?= =?UTF-8?q?=D0=B8=D0=B8=20=D0=B4=D0=BE=207.3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 7 ++++++- composer.json | 8 ++++---- example/image.jpg | Bin 47010 -> 19969 bytes example/manual_request.php | 6 ++++-- src/Client/HttpClient.php | 8 +++----- 5 files changed, 17 insertions(+), 12 deletions(-) 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 974f2de9d64e21505b587f817ef9a8a762b55553..5aff37b1f174c8c44620eb726b92718c58e5fc66 100644 GIT binary patch literal 19969 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 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())