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

詳解vue-cli開(kāi)發(fā)環(huán)境跨域問(wèn)題解決方案

 更新時(shí)間:2017年06月06日 11:35:18   作者:55145848  
本篇文章主要介紹了vue-cli開(kāi)發(fā)環(huán)境跨域問(wèn)題解決方案,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。

前后端分離開(kāi)發(fā)中必要會(huì)遇到的問(wèn)題—跨域。在使用vue開(kāi)發(fā)的時(shí)候,開(kāi)始為了解決跨域問(wèn)題。采用的是CORS(Cross-origin resource sharing)。后臺(tái)在響應(yīng)頭中添加Access-Control-Allow-Origin。這樣就可以跨域調(diào)后臺(tái)接口了。

在前幾天無(wú)意中看到了config的index.js文件中有一個(gè)proxyTable屬性,通過(guò)配置可以解決開(kāi)發(fā)環(huán)境的跨域

開(kāi)發(fā)期間的API代理

當(dāng)將此樣板與現(xiàn)有后端集成時(shí),通常需要在使用dev服務(wù)器時(shí)訪問(wèn)后端API。為了實(shí)現(xiàn)這一點(diǎn),我們可以并行(或遠(yuǎn)程)運(yùn)行dev服務(wù)器和API后端,并讓dev服務(wù)器將所有API請(qǐng)求代理到實(shí)際的后端。

要配置代理規(guī)則,請(qǐng)?jiān)谄渲芯庉媎ev.proxyTable選項(xiàng)config/index.js。dev服務(wù)器正在使用http代理中間件進(jìn)行代理,因此您應(yīng)參考其文檔以獲取詳細(xì)的用法。但這是一個(gè)簡(jiǎn)單的例子:

// config/index.js
module.exports = {
 // ...
 dev: {
 proxyTable: {
  // proxy all requests starting with /api to jsonplaceholder
  '/api': {
  target: 'http://jsonplaceholder.typicode.com',
  changeOrigin: true,
  pathRewrite: { //需要rewrite重寫的, 如果在服務(wù)器端做了處理則可以不要這段
   '^/api': ''
  }
  }
 }
 }
}

上面的示例將代理請(qǐng)求/api/posts/1到http://jsonplaceholder.typicode.com/posts/1。

如果

pathRewrite: { 
‘^/api': ‘a(chǎn)pi' 
}, 

則將代理請(qǐng)求/api/posts/1到http://jsonplaceholder.typicode.com/api/posts/1。

網(wǎng)址匹配

除了靜態(tài)網(wǎng)址之外,您還可以使用glob模式來(lái)匹配URL,例如/api/**。有關(guān)詳細(xì)信息,請(qǐng)參閱上下文匹配。此外,您可以提供一個(gè)filter可以是自定義函數(shù)的選項(xiàng),以確定請(qǐng)求是否應(yīng)被代理:

proxyTable: {
 '*': {
 target: 'http://jsonplaceholder.typicode.com',
 filter: function (pathname, req) {
  return pathname.match('^/api') && req.method === 'GET'
 }
 }
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論