事情是这样的:我有一个将数据发送到服务器的客户端。该服务器必须联系外部 API 并将其响应发送回客户端。一旦服务器获得客户端数据,我就是不知道如何以及在何处联系外部 API。
我像这样路由客户端数据:
app.post('/getAutoComplete', routes.read);
routes.read 检索 req.body 中的数据。使用我的 nodejs 版本(没有 express 框架),然后我以这种方式请求 api:
var http = require('http'), options = {
host : "192.168.1.38",
port : 8080,
path : "/myURL",
method : 'POST'
};
var webservice_data = "";
var webservice_request = http.request(options, function(webservice_response)
{
webservice_response.on('error', function(e){ console.log(e.message); });
webservice_response.on('data', function(chunk){ webservice_data += chunk;});
webservice_response.on('end', function(){res.send(webservice_data);});
});
webservice_request.write(req.body);
webservice_request.end();
问题是我想使用原生 expressJS 方法,如 app.post 但我不知道如何,因为:
- Express (app) 对象在此处不可用(在 app.js 中声明但不在路由文件中)
- 我不知道如何使用 app.post 发送 POST 数据
有什么建议吗?