/
githubmirror
/
magento2
Обзор
Документация
Войти
/
githubmirror
/
magento2
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
2.4-develop
lib/internal/Magento/Framework/HTTP/LaminasClient.php
77 строк
2 KB
Alexandra Zota
ACP2E-4019: CE copyright updates for 2.4.9-beta1
22 окт 2025, 17:47
22 окт 2025, 17:47
1b769b7
Код
Авторство
О чём код?
<?php /** * Copyright 2022 Adobe * All Rights Reserved. */ declare(strict_types=1); /** * Magento HTTP Client */ namespace Magento\Framework\HTTP; use Laminas\Http\Client; use Magento\Framework\HTTP\Adapter\Curl; use Magento\Framework\ObjectManager\ResetAfterRequestInterface; use Traversable; class LaminasClient extends Client implements ResetAfterRequestInterface { /** * Internal flag to allow decoding of request body * * @var bool */ protected bool $urlEncodeBody = true; /** * @param null|string $uri * @param null|array|Traversable $options */ public function __construct($uri = null, $options = null) { $this->setOptions([ 'useragent' => Client::class, 'adapter' => Curl::class, ]); parent::__construct($uri, $options); } /** * @inheritDoc */ public function _resetState(): void { $this->reset(); // Note: added these because LaminasClient doesn't properly reset them. $this->request = null; $this->encType = ''; } /** * Change value of internal flag to disable/enable custom prepare functionality * * @param bool $flag * @return void */ public function setUrlEncodeBody(bool $flag): void { $this->urlEncodeBody = $flag; } /** * @inheritdoc * * Adding custom functionality to decode data after standard prepare functionality */ protected function prepareBody() { $body = parent::prepareBody(); if (!$this->urlEncodeBody && $body) { $body = urldecode($body); } return $body; } }