16

我将创建一个/api端点,盲目地代理请求和响应到遗留的 RESTful API 系统(用 Ruby 编写并托管在不同的域上)。

这是一个中间过渡步骤,因此应该可以正常工作。

所以,我看到了如何使用app.all(). 但由于 API 是 RESTful,我还必须维护用于请求的 HTTP 动词 - 那么,我可以从req对象中检测到它吗?如果没有,我当然可以为 GET、PUT、POST、DELETE、OPTIONS 订阅 5 个处理程序,但最好避免这种情况。

另外,我应该如何处理请求正文(查询字符串和有效负载)?我假设我需要手动重新创建解析后的查询字符串req.query并按原样传递req.bodyrequest https://github.com/mikeal/request - 对吗?

4

2 回答 2

27

我想你们都需要的是req.method. 并处理body,添加express.bodyParser()中间件。

于 2012-10-18T20:17:17.297 回答
3

如果您只想传递请求并返回响应,那么您正在寻找代理

我建议查看node-http-proxy。只需加载代理库,初始化代理,代理所有请求。

于 2012-10-18T20:09:28.720 回答