AJAX跨域問題解決方法

2021-08-29 16:15:12 字數 749 閱讀 4919

呼叫方解決跨域的方法只有一種,那就是隱藏跨域。

何為隱藏跨域?

隱藏跨域的核心思路是通過反向**隱藏跨域以欺騙瀏覽器

什麼是反向**?

反向**是指通過中間伺服器使得訪問同乙個網域名稱的兩個不同url最終會去往兩個不同的伺服器

一:反向** - nginx配置

在之前的被呼叫方解決跨域中,訪問的請求是絕對位址,瀏覽器可以看到進行了跨域。

而在這種方法中,使用的是相對位址,通過不同的相對位址使用nginx進行**,使得實際上跨域的那個位址看起來沒有跨域,但是通過nginx**到不同的伺服器上。

例子:

1 server 

89 location /ajaxserver

12 }

結果:

訪問a.com實際上訪問的是:http://localhost:8081/

訪問a/ajaxserver.com實際上訪問的是:http://localhost:8080/

實際上跨域,但是使用nginx反向**隱藏了跨域

二:反向** - apache配置

依然使用反向**,但是該方法使用apache,

例子:

servername a.com

結果同nginx配置

跨域問題解決方法

工作中總是遇到跨域問題,但是常常遇到了也不知道這是跨域導致的問題,或者知道了也還是不知道怎麼解決。於是,就找了各方資料作了以下分享。首先,跨域的發生只是因為瀏覽器攔截了xhr的跨域請求,不讓我們拿到後台資料的是瀏覽器而不是後台。細分下來,三個原因就是 一 瀏覽器的限制 二 這是個xhr請求 三 跨域...

vue跨域問題解決方法

vue跨域解決方法 vue專案中,前端與後台進行資料請求或者提交的時候,如果後台沒有設定跨域,前端本地除錯 的時候就會報 no access control allow origin header is present on the requested resource.這種跨域錯誤。要想本地正常的...

AJAX跨域問題解決思路

ajax跨域問題的解決思路主要分為3種 1.瀏覽器限制 解決思路 不讓瀏覽器做出限制 解決方法 通過指定引數,讓瀏覽器不做跨域校驗 評價 價值不大,需要每個人都做改動,而且改動是客戶端的改動 2.xhr請求 解決思路 不使用xhr 解決方法 jsonp 缺點 無法滿足現有的開發要求 3.跨域 重要 ...