webpack-dev-server配置proxy一直报502

这是webpack-dev-server的配置:

var server = new WebpackDevServer(webpack(config), {
    publicPath: 'http://localhost:9999/',
    hot: true,
    prependPath: false,
    historyApiFallback: true,
    inline: true,
    progress: true,
    stats: {
        colors: true
    },
    proxy: {
        '/api/*': {
            target: 'http://www.weather.com.cn',
            secure: false,
            pathRewrite: {'^/api': ''}
        }
    }
});

这是ajax请求:

$.ajax({
    url: '/api/data/sk/101010100.html',
    type: 'get',
    dataType: 'json',
    success: function (data) {
        console.log(data);
    }
});

这是浏览器请求的信息:

Request URL:http://localhost:9999/api/data/sk/101010100.html
Request Method:GET
Status Code:502 Bad Gateway
Remote Address:[::1]:9999
Response Headers
view source
Connection:keep-alive
Content-Length:0
Date:Fri, 10 Mar 2017 06:56:20 GMT
X-Powered-By:Express

请问哪里配置错了吗

阅读 7.4k
1 个回答

尝试让webpak-dev-server 代理的请求加上 源host

proxy: {
    // 尝试修改下匹配 
    '/api': {
        target: 'http://www.weather.com.cn',
        secure: false,
        // 新增一行
        changeOrigin: true,
        pathRewrite: {'^/api': ''}
    }
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题