2

次のような簡単なリクエストを作成します。

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

リダイレクト後に最終的な URL を取得するにはどうすればよいですか? 何かが欠けていない限り、ドキュメントや API ドキュメントで方法を見たことがありません。

前もって感謝します。

4

3 に答える 3

2

Zend_Http_Client は、リダイレクトがある場合、最後の URL を Zend_Http_Client->uri プロパティに更新します。

$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/" 
于 2012-07-16T19:55:12.367 に答える
0

クライアントから最後のリクエストを取得してから、ヘッダーを抽出します。

$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
于 2011-09-06T17:06:53.423 に答える
0

未検証 :

$response->getHeader('Location');
于 2011-01-10T08:05:05.810 に答える