Vue.js 是前端開發中受歡迎的框架之一,其腳手架工具 Vue CLI 可以快速創建基于 Vue.js 的項目。在進行項目開發時,可能會遇到跨域的問題,而 Vue CLI 提供了跨域代理的解決方案。
在 Vue CLI 中,可以通過在 vue.config.js 配置跨域代理。以下是一個示例:
module.exports = { devServer: { proxy: { '/api': { target: 'http://localhost:3000', changeOrigin: true, pathRewrite: { '^/api': '/api' } } } } }
上述代碼中,我們通過配置 devServer.proxy 對象,并指定訪問路徑(/api)、代理地址(http://localhost:3000)等參數,實現跨域代理。
其中,changeOrigin 參數表示是否改變請求的域名。若設置為 true,請求頭的 Host 值將會設置為目標 URL(http://localhost:3000)的域名值。而 pathRewrite 參數表示是否重寫請求的路徑。在本例中,我們將請求路徑中的 /api 前綴重寫為 /api 后端路由。
在實際項目開發中,我們可能會遇到多個后端 API 接口地址需要跨域代理的場景。此時,我們可以將 proxy 對象中的配置項抽象為一個數組,實現多個目標地址的代理,例如:
module.exports = { devServer: { proxy: [ { context: ['/api1'], target: 'http://localhost:3001', changeOrigin: true, pathRewrite: { '^/api1': '' } }, { context: ['/api2'], target: 'http://localhost:3002', changeOrigin: true, pathRewrite: { '^/api2': '' } } ] } }
上述代碼中,我們用數組的形式配置了兩個代理,分別匹配 /api1 和 /api2 的請求路徑。通過這種方式,我們可以更方便地對多個后端 API 接口地址進行跨域代理。
上一篇css背景色漸變3種顏色
下一篇ajax彈出data的值