webpack解决跨域问题

webpack解决跨域问题

webpack解决前端跨域问题,只需要安装webpack 的http-proxy-middleware模块就可以

npm install http-proxy-middleware --save-dev

配置如下:

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.mybj123.com 中
            '/device/*': { 
                target: 'http://debug.mybj123.com',
                secure: false, // 接受 运行在 https 上的服务
                changeOrigin: true
            }
        }
    }
}

使用如下:

 fetch('/device/space').then(res => {
        // 被代理到 http://debug.mybj123.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);
    })

注:使用的url 必须以/开始 否则不会代理到指定地址

关注web前端开发的个人技术博客,分享前端经验和技巧
码云笔记 » webpack解决跨域问题

发表评论

提供最优质的资源集合

立即查看 了解详情