由於開發環境和生產環境的不同,會導致vue訪問出現跨域的問題。
1.config/index.js檔案配置**,找到proxytable欄位,如下面一樣配置
dev:
},'/yyy':
},},
配置好後 訪問的url就不用再其他地方帶上網域名稱了。這個只適合開發環境使用,因為開發環境的本地伺服器,以及做好了**的功能,無需去多餘的操作。
為了不用反覆在開發和打包之間切換訪問的api網域名稱**。可以入下配置
找到config/prod.env.js。 這個config/dev.env.js開發環境的前面已經配置好了可以不用管了
'use strict'
module.exports =
import axios from 'axios';
vue.prototype.axios = axios.create(
})vue.prototype.$post = function (url, data = {}) else if (process.env.node_env === 'production') else if (url.search(/\/***/) != -1) else
} return new promise((resolve, reject) => ).catch(function(error) )
})}
以上就完成前端所有的準備工作, 如果只靠前端目前未找到解決的辦法,有這方面知識的高手希望留個言
最後後端配置下伺服器
access-control-allow-headers: *
access-control-allow-origin: *
nginx處理vue打包檔案後的跨域問題
在vue檔案打包後,專案脫離了vue配置的反向 配置,還是會報跨域的錯誤,或者直接打不開本地檔案,但是此刻我們想開啟打包後的檔案,測試一下檔案有沒有錯誤,因為經常會存在開發階段沒有問題,打包後專案就各種問題,此時我們可以利用nginx處理跨域,其實vue配置也是利用的這個 在vue專案檔案中也是利用...
vue專案打包後跨域
關於vue的跨域配置,有開發環境的跨域和生產環境的跨域,詳見我的另一篇部落格 對於上篇文章的生產環境的跨域位址配置,是將所有介面的訪問都指向同乙個伺服器,而對於前後端未完全分離的專案,如果有某個介面需要訪問非當前專案的另一台伺服器的話,就需要對這個介面單獨進行處理了,針對這個問題,我重新梳理了一下關...
Vue跨域問題處理
vue cli2 方案 config 目錄下有乙個 index.js 檔案 module.exports 攔截所有的 websocket 請求 ws vue cli3 方案 vue.config.js 這個配置檔案中來配置 let proxyobj proxyobj ws proxyobj modu...