AJAX(XMLHttpRequest)進行跨域請求方法詳解(三)

注意:以下代碼請在Firefox 3.5、Chrome 3.0、Safari 4之後的版本中進行測試。IE8的實現方法與其他瀏覽不同。

 

3,帶驗證信息的請求

 

身份驗證是Web開發中經常遇到的問題,在跨域請求中,默認情況下是不發送驗證信息的。要想發送驗證信息,需要進行withCredentials 屬性,下面就是一個簡單請求的例子:

點擊“開始測試”,我們可以檢測到下面的請求執行過程:

從上面的響應中可以看出,Cookie 是會隨請求一起發送的。如果我們多次點擊測試按鈕,則可以看到請求和響應的結果是這樣的:

注意 Cookie: ASP.NET_SessionId=fn2zf0zq1cuwgf45fm5fw145; visit=2 這一行,訪問計數器已經被一起發送到服務器。

 

4,IE8 中的實現方法

IE8已經開始支持跨域訪問資源了,但是,IE8提供的功能還比較簡單,可以進行簡單的請求,下面是一個使用的例子:

 

另外,IE8的實現方法與其他瀏覽器不同。更多內容請參考 XDomainRequest 對象,地址是:
http://msdn.microsoft.com/zh-cn/library/cc288060(VS.85).aspx

最後,願意測試的朋友可以訪問這個 http://dotnet.aspx.cc/SimpleCrossSiteRequests.aspx 地址進行“簡單請求”的測試,本頁面允許任何地址進行跨域訪問。(不好意思,個人網站可能被河蟹了)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章