Added some logging

This commit is contained in:
Michael Vogel 2014-05-24 11:01:33 +02:00
parent 4924f527d2
commit 5ae9c5e538

View file

@ -122,7 +122,6 @@ function fetch_url($url,$binary = false, &$redirects = 0, $timeout = 0, $accept_
if(! function_exists('post_url')) {
function post_url($url,$params, $headers = null, &$redirects = 0, $timeout = 0) {
$stamp1 = microtime(true);
$a = get_app();
@ -130,6 +129,8 @@ function post_url($url,$params, $headers = null, &$redirects = 0, $timeout = 0)
if(($redirects > 8) || (! $ch))
return false;
logger("post_url: start ".$url, LOGGER_DATA);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_POST,1);
@ -178,6 +179,8 @@ function post_url($url,$params, $headers = null, &$redirects = 0, $timeout = 0)
$curl_info = curl_getinfo($ch);
$http_code = $curl_info['http_code'];
logger("post_url: result ".$http_code." - ".$url, LOGGER_DATA);
$header = '';
// Pull out multiple headers, e.g. proxy and continuation headers
@ -190,16 +193,18 @@ function post_url($url,$params, $headers = null, &$redirects = 0, $timeout = 0)
}
if($http_code == 301 || $http_code == 302 || $http_code == 303 || $http_code == 307) {
$matches = array();
preg_match('/(Location:|URI:)(.*?)\n/', $header, $matches);
$newurl = trim(array_pop($matches));
$matches = array();
preg_match('/(Location:|URI:)(.*?)\n/', $header, $matches);
$newurl = trim(array_pop($matches));
if(strpos($newurl,'/') === 0)
$newurl = $old_location_info["scheme"] . "://" . $old_location_info["host"] . $newurl;
if (filter_var($newurl, FILTER_VALIDATE_URL)) {
$redirects++;
return fetch_url($newurl,false,$redirects,$timeout);
}
}
if (filter_var($newurl, FILTER_VALIDATE_URL)) {
$redirects++;
logger("post_url: redirect ".$url." to ".$newurl);
return post_url($newurl,$params, $headers, $redirects, $timeout);
//return fetch_url($newurl,false,$redirects,$timeout);
}
}
$a->set_curl_code($http_code);
$body = substr($s,strlen($header));
@ -209,6 +214,8 @@ function post_url($url,$params, $headers = null, &$redirects = 0, $timeout = 0)
$a->save_timestamp($stamp1, "network");
logger("post_url: end ".$url, LOGGER_DATA);
return($body);
}}