Fix xml parsing error

Move re-requesting logic before parsing response body, otherwise it puts HTTP headers into XML body
This commit is contained in:
Siemenskun 2022-05-22 01:46:46 +03:00
parent 659ad8537a
commit d33d026b12
1 changed files with 5 additions and 5 deletions

View File

@ -394,6 +394,11 @@ class UrlHelper {
$ret = @curl_exec($ch); $ret = @curl_exec($ch);
if (curl_errno($ch) === 23 || curl_errno($ch) === 61) {
curl_setopt($ch, CURLOPT_ENCODING, 'none');
$contents = @curl_exec($ch);
}
$headers_length = curl_getinfo($ch, CURLINFO_HEADER_SIZE); $headers_length = curl_getinfo($ch, CURLINFO_HEADER_SIZE);
$headers = explode("\r\n", substr($ret, 0, $headers_length)); $headers = explode("\r\n", substr($ret, 0, $headers_length));
$contents = substr($ret, $headers_length); $contents = substr($ret, $headers_length);
@ -413,11 +418,6 @@ class UrlHelper {
} }
} }
if (curl_errno($ch) === 23 || curl_errno($ch) === 61) {
curl_setopt($ch, CURLOPT_ENCODING, 'none');
$contents = @curl_exec($ch);
}
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
self::$fetch_last_content_type = curl_getinfo($ch, CURLINFO_CONTENT_TYPE); self::$fetch_last_content_type = curl_getinfo($ch, CURLINFO_CONTENT_TYPE);