Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit96e70a4

Browse files
[HttpClient] fix exception in case of PSR17 discovery failure
1 parentb9a0b33 commit96e70a4

File tree

2 files changed

+16
-6
lines changed

2 files changed

+16
-6
lines changed

‎src/Symfony/Component/HttpClient/HttplugClient.php‎

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
useHttp\Client\Exception\RequestException;
1717
useHttp\Client\HttpAsyncClient;
1818
useHttp\Client\HttpClientasHttplugInterface;
19+
useHttp\Discovery\Exception\NotFoundException;
1920
useHttp\Discovery\Psr17FactoryDiscovery;
2021
useHttp\Message\RequestFactory;
2122
useHttp\Message\StreamFactory;
@@ -75,9 +76,13 @@ public function __construct(HttpClientInterface $client = null, ResponseFactoryI
7576
thrownew \LogicException('You cannot use the "Symfony\Component\HttpClient\HttplugClient" as no PSR-17 factories have been provided. Try running "composer require nyholm/psr7".');
7677
}
7778

78-
$psr17Factory =class_exists(Psr17Factory::class,false) ?newPsr17Factory() :null;
79-
$this->responseFactory =$this->responseFactory ??$psr17Factory ?? Psr17FactoryDiscovery::findResponseFactory();
80-
$this->streamFactory =$this->streamFactory ??$psr17Factory ?? Psr17FactoryDiscovery::findStreamFactory();
79+
try {
80+
$psr17Factory =class_exists(Psr17Factory::class,false) ?newPsr17Factory() :null;
81+
$this->responseFactory =$this->responseFactory ??$psr17Factory ?? Psr17FactoryDiscovery::findResponseFactory();
82+
$this->streamFactory =$this->streamFactory ??$psr17Factory ?? Psr17FactoryDiscovery::findStreamFactory();
83+
}catch (NotFoundException$e) {
84+
thrownew \LogicException('You cannot use the "Symfony\Component\HttpClient\HttplugClient" as no PSR-17 factories have been found. Try running "composer require nyholm/psr7".',0,$e);
85+
}
8186
}
8287

8388
$this->waitLoop =newHttplugWaitLoop($this->client,$this->promisePool,$this->responseFactory,$this->streamFactory);

‎src/Symfony/Component/HttpClient/Psr18Client.php‎

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
namespaceSymfony\Component\HttpClient;
1313

14+
useHttp\Discovery\Exception\NotFoundException;
1415
useHttp\Discovery\Psr17FactoryDiscovery;
1516
useNyholm\Psr7\Factory\Psr17Factory;
1617
useNyholm\Psr7\Request;
@@ -68,9 +69,13 @@ public function __construct(HttpClientInterface $client = null, ResponseFactoryI
6869
thrownew \LogicException('You cannot use the "Symfony\Component\HttpClient\Psr18Client" as no PSR-17 factories have been provided. Try running "composer require nyholm/psr7".');
6970
}
7071

71-
$psr17Factory =class_exists(Psr17Factory::class,false) ?newPsr17Factory() :null;
72-
$this->responseFactory =$this->responseFactory ??$psr17Factory ?? Psr17FactoryDiscovery::findResponseFactory();
73-
$this->streamFactory =$this->streamFactory ??$psr17Factory ?? Psr17FactoryDiscovery::findStreamFactory();
72+
try {
73+
$psr17Factory =class_exists(Psr17Factory::class,false) ?newPsr17Factory() :null;
74+
$this->responseFactory =$this->responseFactory ??$psr17Factory ?? Psr17FactoryDiscovery::findResponseFactory();
75+
$this->streamFactory =$this->streamFactory ??$psr17Factory ?? Psr17FactoryDiscovery::findStreamFactory();
76+
}catch (NotFoundException$e) {
77+
thrownew \LogicException('You cannot use the "Symfony\Component\HttpClient\HttplugClient" as no PSR-17 factories have been found. Try running "composer require nyholm/psr7".',0,$e);
78+
}
7479
}
7580

7681
/**

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp