我试图从我的服务器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到弹性搜索