本文介紹了webpack開發跨域問題解決辦法,分享給大家,具體如下:
1. 說明
webpack 內置了 http-proxy-middleware 可以解決 請求的 URL 代理的問題
2. API
需要代理的 pathname 要加 /
module.exports = { devtool: 'cheap-module-source-map', entry: './app/js/index.js' output: { path: path.resolve(__dirname, 'dev'), // 所有輸出文件的目標路徑 filename: 'js/bundle.js', publicPath: '/', chunkFilename: '[name].chunk.js' }, devServer: { contentBase: path.resolve(__dirname, 'dev'), publicPath: '/', historyApiFallback: true, proxy: { // 請求到 '/device' 下 的請求都會被代理到 target: http://debug.xxx.com 中 '/device/*': { target: 'http://debug.xxx.com', secure: false, // 接受 運行在 https 上的服務 changeOrigin: true } } } }
3. 使用
注:使用的url 必須以/開始 否則不會代理到指定地址
fetch('/device/space').then(res => { // 被代理到 http://debug.xxx.com/device/space return res.json(); }).then(res => { console.log(res); }) fetch('device/space').then(res => { // http://localhost:8080/device/space 訪問本地服務 return res.json(); }).then(res => { console.log(res); })
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持。