欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue如何解決跨域問(wèn)題詳解

 更新時(shí)間:2022年02月23日 10:41:56   作者:南獨(dú)酌酒nvn  
VUE訪問(wèn)接口的時(shí)候,很可能出現(xiàn)跨域請(qǐng)求,從而被提供接口的服務(wù)器拒絕,下面這篇文章主要給大家介紹了關(guān)于Vue如何解決跨域問(wèn)題的相關(guān)資料,需要的朋友可以參考下

什么是跨域

跨域指瀏覽器不允許當(dāng)前頁(yè)面的所在的源去請(qǐng)求另一個(gè)源的數(shù)據(jù)。源指協(xié)議,端口,域名。只要這個(gè)3個(gè)中有一個(gè)不同就是跨域。 這里列舉一個(gè)經(jīng)典的列子:

#協(xié)議跨域
http://a.baidu.com訪問(wèn)https://a.baidu.com;
#端口跨域
http://a.baidu.com:8080訪問(wèn)http://a.baidu.com:80;
#域名跨域
http://a.baidu.com訪問(wèn)http://b.baidu.com;

通常在不同服務(wù)器訪問(wèn)過(guò)程中可能會(huì)遇到跨域問(wèn)題,也就是口頭上常說(shuō)的策略同源問(wèn)題 CORS

出現(xiàn)跨越一般就是判斷三個(gè)地方,http協(xié)議,請(qǐng)求地址,端口號(hào),三者若有一處不相同,那么就會(huì)出現(xiàn)跨域,解決這個(gè)問(wèn)題就要配置一個(gè)代理服務(wù)器,通過(guò)代理服務(wù)器實(shí)現(xiàn)跨域請(qǐng)求

解決跨域的情況一般就是如下圖:

Vue 中配置跨域的配置在 vue.config.js 文件中添加:

配置一個(gè)的寫(xiě)法

module.exports = {
  devServer: {
    proxy: 'http://localhost:5000' // 配置訪問(wèn)的服務(wù)器地址
  }
}

配置多個(gè)的寫(xiě)法

module.exports = {
  devServer: {
    proxy: {
      '/api': {
        target: 'http://localhost:5000', // 配置訪問(wèn)的服務(wù)器地址
        pathRewrite: { '^/api': '' },  // 用于將請(qǐng)求中的 /api 字符串替換為空, 然后訪問(wèn)地址就能正確訪問(wèn),若不添加此行配置,那么訪問(wèn)地址就變成了: http://localhost:5000/api/request_url,這樣的請(qǐng)求就會(huì)出現(xiàn) 404 操作
        ws: true, // 是否支持 webstocket, 默認(rèn)是 true
        changeOrigin: true // 用于控制請(qǐng)求頭中的 host 值, 默認(rèn)是 ture
      },
      '/api2': {
        target: 'http://localhost:6000', // 配置訪問(wèn)的服務(wù)器地址
        pathRewrite: { '^/api2': '' },  // 用于將請(qǐng)求中的 /api2 字符串替換為空, 然后訪問(wèn)地址就能正確訪問(wèn),若不添加此行配置,那么訪問(wèn)地址就變成了: http://localhost:6000/api/request_url,這樣的請(qǐng)求就會(huì)出現(xiàn) 404 操作
        ws: true, // 是否支持 webstocket, 默認(rèn)是 true
        changeOrigin: true // 用于控制請(qǐng)求頭中的 host 值, 默認(rèn)是 ture
      }
    }
  }
}

添加完代理服務(wù)器的相關(guān)配置,就需要通過(guò) ajax 請(qǐng)求訪問(wèn)服務(wù)器了,一般 vue 中使用的都是 axios 庫(kù),這里就以 axios 庫(kù)為例子:

安裝 axios

npm i axios

使用 axios

// 引入 axios 庫(kù)
import axios from 'axios'
export default {
	name: 'Student', // 組件名稱
	// 組件使用的方法
	methods: {
		注釋內(nèi)容 `:get 請(qǐng)求訪問(wèn) /api 前綴開(kāi)頭的地址,實(shí)際上訪問(wèn)的地址是: http://localhost:5000/request_url`
		test1() {
			axios.get('http://localhost:8080/api/request_url').then(res => {
				console.log(res.data); // 輸出請(qǐng)求響應(yīng)值內(nèi)容
			});
		},
		注釋內(nèi)容 :`get 請(qǐng)求訪問(wèn) /api2 前端開(kāi)頭的地址,實(shí)際上訪問(wèn)的地址是:http://localhost:6000/request_url`
		test2() {
			axios.get('http://localhost:8080/api2/request_url').then(res => {
				console.log(res.data); // 輸出請(qǐng)求響應(yīng)值內(nèi)容
			})
		}
	}	
}

總結(jié)

到此這篇關(guān)于Vue如何解決跨域問(wèn)題的文章就介紹到這了,更多相關(guān)Vue解決跨域問(wèn)題內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue實(shí)現(xiàn)二維碼掃碼功能(帶樣式)

    vue實(shí)現(xiàn)二維碼掃碼功能(帶樣式)

    最近接了一個(gè)移動(dòng)端的項(xiàng)目,實(shí)現(xiàn)微信掃碼功能,今天小編利用這個(gè)平臺(tái)給大家分享vue實(shí)現(xiàn)二維碼掃描功能的實(shí)現(xiàn)代碼,需要的朋友參考下吧
    2021-08-08
  • 詳解vue項(xiàng)目打包后通過(guò)百度的BAE發(fā)布到網(wǎng)上的流程

    詳解vue項(xiàng)目打包后通過(guò)百度的BAE發(fā)布到網(wǎng)上的流程

    這篇文章主要介紹了將vue的項(xiàng)目打包后通過(guò)百度的BAE發(fā)布到網(wǎng)上的流程,主要運(yùn)用的技術(shù)是vue+express+git+百度的應(yīng)用引擎BAE。需要的朋友可以參考下
    2018-03-03
  • vue 純js監(jiān)聽(tīng)滾動(dòng)條到底部的實(shí)例講解

    vue 純js監(jiān)聽(tīng)滾動(dòng)條到底部的實(shí)例講解

    今天小編就為大家分享一篇vue 純js監(jiān)聽(tīng)滾動(dòng)條到底部的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-09-09
  • Vue雙向數(shù)據(jù)綁定(MVVM)的原理

    Vue雙向數(shù)據(jù)綁定(MVVM)的原理

    這篇文章主要介紹了Vue雙向數(shù)據(jù)綁定的原理,幫助大家更好的理解和學(xué)習(xí)vue,感興趣的朋友可以了解下
    2020-10-10
  • vue父子組件傳值不能實(shí)時(shí)更新的解決方法

    vue父子組件傳值不能實(shí)時(shí)更新的解決方法

    Vue是一個(gè)以數(shù)據(jù)驅(qū)動(dòng)、組件化的前端框架,其中組件化是Vue中較為重要的概念之一,組件之間的通信則成為Vue中較為普遍的需求,下面這篇文章主要給大家介紹了關(guān)于vue父子組件傳值不能實(shí)時(shí)更新的解決方法,需要的朋友可以參考下
    2023-05-05
  • Vue動(dòng)態(tài)路由路徑重復(fù)及刷新丟失頁(yè)面問(wèn)題的解決

    Vue動(dòng)態(tài)路由路徑重復(fù)及刷新丟失頁(yè)面問(wèn)題的解決

    這篇文章主要介紹了Vue動(dòng)態(tài)路由路徑重復(fù)及刷新丟失頁(yè)面問(wèn)題的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • vue3實(shí)現(xiàn)問(wèn)卷調(diào)查的示例代碼

    vue3實(shí)現(xiàn)問(wèn)卷調(diào)查的示例代碼

    本文主要介紹了vue3實(shí)現(xiàn)問(wèn)卷調(diào)查的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • Vue循環(huán)組件加validate多表單驗(yàn)證的實(shí)例

    Vue循環(huán)組件加validate多表單驗(yàn)證的實(shí)例

    今天小編就為大家分享一篇Vue循環(huán)組件加validate多表單驗(yàn)證的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-09-09
  • 詳解vue beforeEach 死循環(huán)問(wèn)題解決方法

    詳解vue beforeEach 死循環(huán)問(wèn)題解決方法

    這篇文章主要介紹了vue beforeEach 死循環(huán)問(wèn)題解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • vue彈出框組件封裝實(shí)例代碼

    vue彈出框組件封裝實(shí)例代碼

    這篇文章主要介紹了vue彈出框組件封裝,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-10-10

最新評(píng)論