1. 程式人生 > >form表單提交沒有跨域問題,但ajax提交存在跨域問題

form表單提交沒有跨域問題,但ajax提交存在跨域問題

瀏覽器的策略本質是:一個域名下面的JS,沒有經過允許是不能讀取另外一個域名的內容,但是瀏覽器不阻止你向另外一個域名傳送請求。

所以form表單提交沒有跨域問題,提交form表單到另外一個域名,原來頁面是無法獲取新頁面的內容,或者說form提交後不需要返回,但是ajax是需要返回的。

而ajax是想要讀取響應內容,瀏覽器是不允許你這麼做的。

世界本無跨域,是瀏覽器不允許js訪問別的域,但是瀏覽器卻沒有限制自己,img標籤和script標籤都是可以載入其他域的圖片或者js檔案。這不就是jsonp的跨域嘛,利用瀏覽器的歷史相容性。

瀏覽器的安全策略限制的是js指令碼,並不限制src,form表單提交之類的請求。就是說form表單提交不存在安全問題,ajax提交跨域存在安全問題。