原因
我做某些專案的時候會使用一些公共的api,但是由于我自己的域名與api域名不是同一個,瀏覽器會報跨域錯誤,前端處理的話,一般而言vue中使用最多的其實是代理解決跨域,但我會把專案打包生成dist發布部署到gitee的pages中,部署為一個靜態頁面,如果使用vue代理的話,打包后vue的代理會被抽離失效,這時有人可能會想到nginx反向代理或者后端配置跨域,但這是gitee的服務啊,又不是你自己的,所以剩下的只有jsonp和window.name之類的跨域方案,這里我就jsonp做一下說明,
原理
其實jsonp跨域原理及其簡單,就是利用script標簽的src屬性,它是可以加載其它域的資源的,比如你想使用這個api:http://pv.sohu.com/cityjson(這是搜狐獲取ip資訊的公共api),你只需要這樣寫就可以了:

然后瀏覽器f12你就會看到:

結語
當然我這只是簡單的原理說明,網上有很多封裝好了的方法,甚至專門的插件都有,比如vue的:vue-jsonp,
原創者:曦12
原文鏈接:https://www.cnblogs.com/xi12/p/16690082.html
轉載請注明原創者添加原文鏈接!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/507234.html
標籤:其他
下一篇:vue中代理解決跨域
