小编Enc*_*tar的帖子

在nodejs中试图让http-proxy转发通过查询字符串参数的请求

如何使用nodejs中的查询字符串参数代理请求,我目前正在使用express和http-proxy?

我有一个使用express和http-proxy模块的nodejs应用程序将HTTP GET请求从我的端点上的某些路径代理到在同一服务器上运行的第三方API但是有一个不同的端口(因此遇到了相同的原始问题,需要代理).这工作正常,直到我想在后端API上使用查询字符串参数调用REST函数,即"?name = value".然后我得到一个404.

var express = require('express');
var app = express();
var proxy = require('http-proxy');
var apiProxy = proxy.createProxyServer();

app.use("/backend", function(req,res){
    apiProxy.web(req,res, {target: 'http://'+ myip + ':' + backendPort + '/RestApi?' + name + '=' + value});
});
Run Code Online (Sandbox Code Playgroud)

Chrome的控制台显示:

"GET http://localhost:8080/backend 404 (Not Found)"
Run Code Online (Sandbox Code Playgroud)

注意:我稍后在快递中使用其他东西,但不是在代理行之前使用,而是在路由路径时从更具体到更通用.可以使用相同的协议在浏览器中直接访问后端:// url:port/path?name = value没有问题.

proxy http-proxy node.js node-http-proxy

4
推荐指数
1
解决办法
4217
查看次数

标签 统计

http-proxy ×1

node-http-proxy ×1

node.js ×1

proxy ×1