|
6 | 6 | use AmpProject\Exception\FailedToGetFromRemoteUrl; |
7 | 7 | use AmpProject\RemoteGetRequest; |
8 | 8 | use AmpProject\Response; |
| 9 | +use AmpProject\Exception\FailedToParseUrl; |
9 | 10 |
|
10 | 11 | /** |
11 | 12 | * Remote request transport using cURL. |
@@ -97,13 +98,18 @@ public function __construct($sslVerify = true, $timeout = self::DEFAULT_TIMEOUT, |
97 | 98 | public function get($url, $headers = []) |
98 | 99 | { |
99 | 100 | $retriesLeft = $this->retries; |
| 101 | + |
| 102 | + if (! is_string($url) || empty($url)) { |
| 103 | + throw FailedToGetFromRemoteUrl::withException($url, FailedToParseUrl::forUrl($url)); |
| 104 | + } |
| 105 | + |
100 | 106 | do { |
101 | 107 | $curlHandle = curl_init(); |
102 | 108 |
|
103 | 109 | curl_setopt($curlHandle, CURLOPT_URL, $url); |
104 | | - curl_setopt($curlHandle, CURLOPT_HEADER, 0); |
| 110 | + curl_setopt($curlHandle, CURLOPT_HEADER, false); |
105 | 111 | curl_setopt($curlHandle, CURLOPT_FOLLOWLOCATION, true); |
106 | | - curl_setopt($curlHandle, CURLOPT_SSL_VERIFYPEER, $this->sslVerify ? 1 : 0); |
| 112 | + curl_setopt($curlHandle, CURLOPT_SSL_VERIFYPEER, $this->sslVerify); |
107 | 113 | curl_setopt($curlHandle, CURLOPT_SSL_VERIFYHOST, $this->sslVerify ? 2 : 0); |
108 | 114 | curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, true); |
109 | 115 | curl_setopt($curlHandle, CURLOPT_FAILONERROR, true); |
|
0 commit comments