1. 程式人生 > >ajax無法重定向的原因分析

ajax無法重定向的原因分析

ajax只支援區域性重新整理,所以和重定向的概念完全不同,這裡簡單分析一下原因:

response.sendRedirect的機制

response.sendRedirect做重定向的機制,其實是向伺服器傳送一個特殊的Header,由瀏覽器做重定向,所以從程式碼層面我們可能覺得它是由伺服器發起直接重定向,但實質還是瀏覽器在做相關的工作,它的過程是從一個頁面到另一個頁面,分屬兩個不同的頁面.

ajax的機制

ajax的原理很簡單,就是通過XmlHttpRequest物件向伺服器傳送請求,從伺服器獲取資料.XmlHttpRequest物件的作用就是向伺服器傳送請求,它的作用也僅僅侷限於此,所以ajax的作用也侷限於此:傳送請求獲取資料.所以我們也不要苛求ajax做更多其他的功能了.ajax返回的是一個純文字流,作用域僅僅是在這個頁面,所以無法執行response.sendRedirect

對瀏覽器要求的跳轉頁面的操作.