1. 程式人生 > 其它 >什麼是跨域請求,怎麼解決?

什麼是跨域請求,怎麼解決?

什麼是跨域請求,怎麼解決?

 

跨域指的是從一個域名去請求另外一個域名的資源。即跨域名請求!跨域時,瀏覽器不能執行其他域名網站的指令碼,是由瀏覽器的同源策略造成的,是瀏覽器施加的安全限制。

解決跨域的辦法:

通過jsonp跨域

document.domain + iframe跨域

location.hash + iframe

window.name + iframe跨域

postMessage跨域

跨域資源共享(CORS)

nginx代理跨域

nodejs中介軟體代理跨域

WebSocket協議跨域

Vue解決跨越:

1)在Vue中最推薦的是CORS,全稱為 Cross Origin Resource Sharing(跨域資源共享)。

這種方案對於前端來說沒有什麼工作量,和平時發請求寫法上沒有任何區別,工作量基本都在後端這裡,使用CORS前端不需要配置proxytable。

每一次請求,瀏覽器必須先以 OPTIONS 請求方式傳送一個預請求,從而獲知伺服器端對跨源請求所支援 HTTP 方法。在確認伺服器允許該跨源請求的情況下,以實際的 HTTP 請求方法傳送那個真正的請求。

2)vue cli30修改配置資訊需要新建vue.config.js檔案,在module.exports方法的devServer物件中proxy 選項來新增代理配置,當前端沒有匹配到當前路由時就會被代理到伺服器介面地址。