弹性搜索node.js代理请求冻结



我试图从我的服务器localhost:8080向弹性搜索服务器(localhost:9200)发出请求,但是当我这样做时,弹性搜索没有响应,代码:

var express = require('express');
var router = express.Router();
// var esClient = require('../db/esProvider');
var proxy = require('http-proxy-middleware');
router.use('/:apiKey/_search', proxy({
    target: 'http://127.0.0.1:9200/',
    changeOrigin:true,
    pathRewrite: function (path, req) {
        return path.replace('/api', '')
    },
    onProxyReq: function (proxyReq, req, res) {
      console.log('request')
    },
    onProxyRes: function (proxyRes, req, res) {
        // add new header to response
        console.log('resoponse')
    },
    onError:function(err, req, res){
        console.log(err)
    }
}));

我的代理配置有什么问题,当我尝试通过webpack-dev-server创建代理服务器时,我收到正常的响应…

哦,对不起,这是body-parser问题,我在应用body-parser中间件后发送POST请求,这就是为什么代理服务器发送无效body到弹性搜索

最新更新