1 跨域問題

2022-04-22 13:42:45 字數 702 閱讀 7684

昨天前台系統的首頁左側類目出現了問題,前台訪問後台js報錯,這裡主要是因為跨域的問題。

l 1)

什麼是跨域?

è 不同網域名稱,是跨域

è :8080   網域名稱相同,埠不同,是跨域

è 不同二級網域名稱,是跨域

è /api

同一網域名稱的不同路徑,不是跨域

可以看出來,以下情況都屬於跨域:

u 不同網域名稱

u 不同二級網域名稱

u 同一網域名稱不同埠

但是跨域並不一定會有問題,何時會有問題?

l 什麼時候出現跨域問題?

跨域問題出現的場景:瀏覽器對ajax請求的限制,不允許跨域請求資源。其它情況沒有跨域問題。

如何解決跨域問題?

我們在後台系統

(taotao-manage)中編寫乙個jsp頁面,輸出一段字串,模擬servlet服務端:

我們發現,請求url的後面自動

拼接了引數:callback=jquery11130... ,這是

jquery

自動生成的**函式名稱,這樣後台程式就得知是跨域請求,然後呼叫這個**函式,傳遞資料。

問題:jsonp有什麼缺陷?

jsonp只能發出

get請求。無法發出post請求。

問題:如果必須發出post跨域請求怎麼辦?

1、 cors

2、 使用nginx來進行跨域

cookie跨域問題 跨域登入

cookie跨域時修改不成功,需要在刪除 或者修改時 設定domain值與存入的domain一致,跨域修改cookie不會成功。例如 login.abc.com login工程 www.abc.com abc工程 www.abc.com login.html呼叫login工程的登陸介面 login工...

ajax跨域問題簡單解決 1

js不能跨域請求資料,js可以跨域載入js檔案,比如使用jquery可以引用官網的url,這也是跨域 解決js的跨域問題可以使用jsonp。先來說一下什麼是跨域和非跨域 簡單的據一些例子 非跨域 呼叫 主網域名稱不同 123 456,跨域 呼叫 子網域名稱不同 abc def,跨域 呼叫 埠不同 8...

跨域問題詳解 ajax跨域解決

跨域問題的產出,根本原因在於瀏覽器的同源策略,什麼又是同源策略呢,官方解釋 同源策略限制了從同乙個源載入的文件或指令碼如何與來自另乙個源的資源進行互動。這是乙個用於隔離潛在惡意檔案的重要安全機制。同源的定義 如果兩個頁面的協議,埠 如果有指定 和網域名稱都相同,則兩個頁面具有相同的源。可以跨域讀取其...