これは古い投稿ですが、Googleで高く評価されていますので、私のソリューションを追加します。
ajaxレスポンスを制御できる場合は、レスポンスに最終的なURLを追加することができます。
header('X-final-url: /some/other/location')
:
PHPでは、これはのようなものになるでしょう。
その後、jqueryの中で、あなたがこの値にアクセスすることができます。
var finalUrl = jqXHR.getResponseHeader('X-final-url');
私はカーネルリスナーでsymfonyのにヘッダを追加します。
サービス
app.kernel.response_metadata_populator:
class: AppBundle\Listeners\ResponseMetadataPopulator
tags:
- { name: kernel.event_listener, event: kernel.response, method: onKernelResponse }
リストENERクラス
class ResponseMetadataPopulator
{
/**
* @param FilterResponseEvent $event
*/
public function onKernelResponse(FilterResponseEvent $event)
{
$response = $event->getResponse();
$response->headers->set('X-FINAL-URL', $event->getRequest()->getRequestUri());
}
}
[この回答](http://stackoverflow.com/a/8056313/759866)によれば、最新のブラウザで実装されています。 – Benjamin