【发布时间】:2016-08-04 06:01:23
【问题描述】:
我正在尝试为我的应用程序实现批处理 API,并且客户端可以向服务器发送一组发送请求并期望返回单个响应。
在我的 MEAN 堆栈应用程序中使用 Express 框架。我创建了一个批处理 API 资源,该资源从客户端接收,并且应该按照请求的每个部分中提到的 URL 执行操作。
示例请求正文:
{
"batchID": "abc123",
"batchReq": [{
"id": "1",
"url": "/api/schoolm/students",
"method": "GET",
"value": null
}, {
"id": "2",
"url": "/api/schoolm/teachers",
"method": "POST",
"value": {
"name": "Teacher1",
"age": 34
}
}]
}
这是发送到 /api/schoolm/batch
如何将批处理控制器内部的请求重定向到各自的 API?
【问题讨论】:
-
将1个请求分成多个请求的动机是什么?
-
这不是一个请求——它们是针对不同 API 的不同类型。将它们合并到一个请求中是为了减少我想从代码的客户端进行的调用次数。
-
我相信您的方法可能不正确,您是否担心节点无法处理您期望的请求数量?因为单个节点实例能够处理大多数负载,如果您不能使用在节点中也很容易的集群进行扩展
-
哦,不。这不是问题。我们预计不会有那么高的流量。但是,如果他们需要来自多个 API 的数据以在一个屏幕上显示,则为 UI 提供各种灵活性。例如,这些可以合并到一个请求中。
标签: node.js rest http express mean-stack