Vue開發(fā)中遇到的跨域問題及解決方法
跨域是指a頁面想獲取b頁面資源,如果a、b頁面的協(xié)議、域名、端口、子域名不同,或是a頁面為ip地址,b頁面為域名地址,所進(jìn)行的訪問行動都是跨域的,而瀏覽器為了安全問題一般都限制了跨域訪問,也就是不允許跨域請求資源。
1.jsonp
原理是:動態(tài)插入script標(biāo)簽,通過script標(biāo)簽引入一個js文件,這個js文件載入成功后會執(zhí)行我們在url參數(shù)中指定的函數(shù),并且會把我們需要的json數(shù)據(jù)作為參數(shù)傳入。
由于同源策略的限制,XmlHttpRequest只允許請求當(dāng)前源(域名、協(xié)議、端口)的資源,為了實現(xiàn)跨域請求,可以通過script標(biāo)簽實現(xiàn)跨域請求,然后在服務(wù)端輸出JSON數(shù)據(jù)并執(zhí)行回調(diào)函數(shù),從而解決了跨域的數(shù)據(jù)請求。
優(yōu)點是兼容性好,簡單易用,支持瀏覽器與服務(wù)器雙向通信。
缺點是只支持GET請求。
2.core
采用的是CORS(Cross-origin resource sharing)。后臺在響應(yīng)頭中添加Access-Control-Allow-Origin。這樣就可以跨域調(diào)后臺接口了。
3.vue開發(fā)期間的api代理
當(dāng)將此樣板與現(xiàn)有后端集成時,通常需要在使用dev服務(wù)器時訪問后端API。為了實現(xiàn)這一點,我們可以并行(或遠(yuǎn)程)運行dev服務(wù)器和API后端,并讓dev服務(wù)器將所有API請求代理到實際的后端。
以上就是本次介紹的全部相關(guān)知識點,如果大家有任何補(bǔ)充可以聯(lián)系腳本之家小編。
相關(guān)文章
Vue包大小優(yōu)化的實現(xiàn)(從1.72M到94K)
這篇文章主要介紹了Vue包大小優(yōu)化的實現(xiàn)(從1.72M到94K),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02基于vue+ bootstrap實現(xiàn)圖片上傳圖片展示功能
這篇文章主要介紹了基于vue+ bootstrap實現(xiàn)圖片上傳圖片展示功能,需要的朋友可以參考下2017-05-05vue.js路由mode配置之去掉url上默認(rèn)的#方法
今天小編就為大家分享一篇vue.js路由mode配置之去掉url上默認(rèn)的#方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11vue3使用iframe嵌入ureport2設(shè)計器,解決預(yù)覽時NullPointerException異常問題
這篇文章主要介紹了vue3使用iframe嵌入ureport2設(shè)計器,解決預(yù)覽時NullPointerException異常問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-10-10