2011-06-30 77 views
0

我有一個使用XmlHttpRequest對象從JavaScript調用的HttpHandler。如果不滿足某些條件,我想讓HttpHandler重定向客戶端。XmlHttpRequest調用HttpHandler - 能夠重定向?

我試過玩context.Response.Redirect(@「http://www.stackoverflow.com」),但這只是發送HTTP請求響應中的網頁內容給客戶端。

有什麼辦法可以從HttpHandler本身重定向客戶端嗎?或者一旦客戶端收到XmlHttpRequest響應,這是否會發生?

感謝

回答

1

XmlHttpRequest對象將永遠銘記從服務器重定向,並給您重定向頁面的HTML - 這是按照W3C規範,不能被控制(參見Prevent redirection of Xmlhttprequest)。

因此,唯一的辦法就是返回HttpHandler(狀態碼爲200 OK)的響應,它將指示需要重定向,並在接收到響應時返回url,您可以使用java-script進行實際重定向(if需要)。