天天看點

跨域如何處理

産生原因

跨域産生的原因是由于前端位址與背景接口不是同源,進而導緻 ajax 不能發送

非同源産生的問題

Cookie、LocalStorage 和 IndexDB 無法擷取

DOM 無法獲得

AJAX 請求不能發送

同源條件

協定,端口,主機 三者相同即為同源

反之,其中隻要 某一個 不一樣則為不同源

解決方式

本地開發跨域

本地開發一般使用下面 3 種方式進行處理

vite 的 proxy 進行代理

背景開啟 cors

使用 nginx 轉發請求

​​項目内部​​自帶第一種方式,具體可以參考服務端互動-本地開發環境接口位址修改

生産環境跨域

生産環境一般使用下面 2 種方式進行處理

背景開啟 cors

使用 nginx 轉發請求

背景開啟 cors 不需要前端做任何改動

繼續閱讀