我的 server.js 中有这个
app.post("/leadAPI/ed",function(request,response){
//api post code here
});
在此发布请求中,我需要将请求正文中包含的数据发布到具有特定 URL 的外部 API,并使用 response.send 将响应发回。如何以干净的方式做到这一点。 Expressjs 中有为此内置的东西吗?
正如安德烈亚斯所说,这不是快递的职责。它的职责是在 HTTP 请求到来时调用您的函数。
您可以使用节点的内置 HTTP 客户端(正如 Andreas 在评论中提到的那样)向外部站点发出请求。
尝试这样的事情:
var http = require('http');
app.post("/leadAPI/ed", function(request, response) {
var proxyRequest = http.request({
host: 'remote.site.com',
port: 80,
method: 'POST',
path: '/endpoint/url'
},
function (proxyResponse) {
proxyResponse.on('data', function (chunk) {
response.send(chunk);
});
});
proxyRequest.write(response.body);
proxyRequest.end();
});
我确信您需要对其进行调整以处理分块响应并找出传输编码,但这就是您所需要的要点。
详细信息请参见
http://nodejs.org/api/http.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)