跨域出現的場景:
1. 前後端分離專案開發
2. 前端真的是想去請求其它ip、port下的api介面
跨域:只有web前端會出現的情況,瀏覽器的保護機制。
請求的ip、埠和當前在訪問的**不同,就會產生跨域。
跨域的出現:
跨域的執行機制:
前端訪問跨域**介面,會自動傳送乙個options請求,之後在跟隨乙個自己的請求,如果options請求被拒絕,後端的請求則失敗,如果options請求後端設定通過,第二個請求後端沒有設定通過,照樣是請求失敗。
後端的解決跨域的方式1(vue開發環境下,**、跨域攜帶cookie配置):
後端解決方式2:
使用ngnix做**,由nginx返回靜態檔案和它和後端互動。
前提:不涉及第三方介面時候
使用場景:專案上線時候使用
後端解決方式3(跨域只是瀏覽器的限制):
前端請求自己的後端介面,後端去請求第三方的介面,拿到內容,給前端返回。
使用場景:專案上線了,第三方後端沒有做跨域處理時候(偽造前端式請求,通過requests模組)
解決跨域的方式
jsonp 處理跨域的原理由於 script 標籤不受瀏覽器同源策略的影響,允許跨域引用資源。因此可以通過動態建立 script 標籤,然後利用 src 屬性進行跨域,這也就是 jsonp 跨域的基本原理。優點 缺點 示例 後端 expressconst express require expres...
Proxy方式解決跨域
在使用vue cli3.x之後建立vue專案,專案結構發生了較大的改變,不在存在vue.config.js配置檔案,需要手動建立該檔案,如果專案的 和 package.json 同級的 根目錄中存在這個檔案,那麼它會被 vue cli service 自動載入。你也可以使用 package.json...
跨域的chrome解決方式
跨域,是前端人員經常都會遇見的。但是,如果缺少了後端人員的配合,以及你對nginx一竅不通,又不能夠用jsonp來操作後端人員的json資料,這個時候你就頭痛了。放心,本文試著用兩者在瀏覽器端暴力跨界,允許你在chrome上跨域的方式 別跟我說想要在ie上跨域,在我眼中ie就是半成品,開發環境可以先...