为什么Webpack代理不起作用(Access-Control-Allow-Origin错误)?

时间:2019-05-27 15:07:50

标签: javascript http webpack cors axios

因此,我尝试通过代理请求绕过服务器上的CORS。我正在使用webpack和axios。 因此,这是webpack开发服务器选项:

devServer: {
            contentBase: './build/',
            historyApiFallback: true,
            hot: true,
            quiet: true,
            open: false,
            port,
            noInfo: false,
            clientLogLevel: 'error',
            proxy: {
                '/api/**': {
                    target: 'http://mydev.com',
                    changeOrigin: true,
                    secure: false
                }
            }
        }

和axios:

const axiosInstance = axios.create({
    baseURL: 'http://mydev.com',
    timeout: 30000,
    headers: {
        'Content-Type': 'application/json',
        'X-AUTH-TOKEN':
            'my-token
    },
    data: {}
});

但是我的来历仍然是localhost,并且option的请求没有通过。因此,我有此错误。

请澄清一下:我想使用JSON内容从本地主机向mydev.com发出请求,并绕过CORS设置。

谢谢!

1 个答案:

答案 0 :(得分:1)

Webpack的代理选项实际上创建了一个小型反向代理服务器,该服务器连接到您的目标端点。 在这种情况下,您的应用(axios实例)应连接到代理:

const axiosInstance = axios.create({
    baseURL: 'localhost:3000/api' // your local server here
    ...
});