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:
parent
659ad8537a
commit
d33d026b12
|
@ -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);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue