I've получил следующий URL:Как получить перенаправленный URL?
http://sowacs.appspot.com/AWS/webservices.amazon.com/onca/xml?Service=AWSECommerceService&AWSAccessKeyId=AKIAICNDB2XMNUH7OIDA&AssociateTag=sometag&BrowseNode=10777&Operation=ItemSearch&SearchIndex=Books&Condition=All&ResponseGroup=ItemIds&ItemPage=1
, как вы нажмете на ссылку вы получите в файл XML. Когда вы посмотрите на Url, есть метка времени и добавлен параметр подписи. Я хотел бы получить этот расширенный Url в php-скрипте. Я искал часы и нашел такие вещи, как:
function get_web_page($url)
{
$options = array(
CURLOPT_RETURNTRANSFER => true, // return web page
CURLOPT_HEADER => true, // return headers
CURLOPT_FOLLOWLOCATION => true, // follow redirects
CURLOPT_ENCODING => "", // handle all encodings
CURLOPT_USERAGENT => "spider", // who am i
CURLOPT_AUTOREFERER => true, // set referer on redirect
CURLOPT_CONNECTTIMEOUT => 120, // timeout on connect
CURLOPT_TIMEOUT => 120, // timeout on response
CURLOPT_MAXREDIRS => 10, // stop after 10 redirects
);
$ch = curl_init($url);
curl_setopt_array($ch, $options);
$content = curl_exec($ch);
$err = curl_errno($ch);
$errmsg = curl_error($ch);
$header = curl_getinfo($ch);
curl_close($ch);
//$header['errno'] = $err;
// $header['errmsg'] = $errmsg;
//$header['content'] = $content;
print($header[0]);
return $header;
}
$thisurl = "http://sowacs.appspot.com/AWS/
webservices.amazon.com/onca/xml?
Service=AWSECommerceService&
AWSAccessKeyId=AKIAICNDB2XMNUH7OIDA&AssociateTag=sometag&BrowseNode=10777
&Operation=ItemSearch&SearchIndex=Books&Condition=All&ResponseGroup=ItemIds&ItemPage=1
";
$myUrlInfo = get_web_page($thisurl);
echo $myUrlInfo["url"];
но это только эхо меня первый URL. Не расширенный. Мне нужно перенаправление для запроса amazon-api. Этот сайт генерирует подпись и временную метку для меня (https://sowacs.appspot.com/), чтобы я мог выполнить api-запрос. Возможно, это не «нормальное» перенаправление. Я понятия не имею, я относительно новичок в кодировании ... поэтому мой PHP-скрипт нуждается в URL-адресе! Спасибо.
работает отлично! Ты спас меня много времени! – tyler