2011-01-07 3 views
2

eine einfache Anfrage zu machen wie:Erste Zend_Http Finale URL

$client = new Zend_Http_Client('http://example.org'); 
$response = $client->request(); 

Wie kann ich die endgültige URL nach den Umleitungen bekommen? Ich habe in der Dokumentation oder den API-Dokumenten keinen Weg gesehen, es sei denn, ich verpasse etwas.

Vielen Dank im Voraus.

Antwort

0

Nicht getestet:

$response->getHeader('Location'); 
+0

Position ist in der Kopfzeile enthalten, wenn eine Umleitung vorhanden ist. Der Header enthält nicht die endgültige URL. Ich habe aufgegeben und begonnen, Curl zu verwenden. Danke für den Versuch! – clips404

0

die letzte Anforderung vom Client Erhalten und dann die Header extrahieren.

$client = new Zend_Http_Client('http://webonyx.com'); 
$response = $client->request(); 
$lastHeaders = Zend_Http_Response::extractHeaders($client->getLastRequest()); 

// $lastHeaders['host'] will be your final redirected host 
2

Zend_Http_Client die letzte URL in Zend_Http_Client-> uri Eigenschaft aktualisieren, wenn es umleiten ist.

$sourceUrl = 'http://google.com'; 
$client = new Zend_Http_Client($sourceUrl); 
$response = $client->request(); 
$finalUrl = $client->getUri()->__toString(); 

var_dump($sourceUrl); 
// string(17) "http://google.com" 
var_dump($finalUrl); 
// string(25) "http://www.google.com:80/"