【问题标题】:How to insert couchdb documents in bulk?如何批量插入couchdb文档?
【发布时间】:2015-01-20 22:10:44
【问题描述】:

我的任务是修改旧版应用,以便用户可以批量上传工资调整。目前他们必须填写表格并逐项输入数据,每项后点击提交。我让他们能够一次上传包含大量调整的 CSV 文件。

在服务器上,他们将物品一一插入沙发,如下所示:

function wsapiPOST(req, res, next) {
  var path = req.path.substr(6)
    , url = couchPath + path + requestUtil.buildQueryString(req);

  request.post({
    url: url,
    headers: { 'content-type': 'application/json' },
    body: JSON.stringify(req.body)
  },function (err, resp, body) {
    if (err) {
      if (resp) {
        res.writeHead(resp.statusCode);
        res.end(body);
      } else { // This would happen if the request timed out
        res.writeHead(408);
        res.end('timeout');
      }
    }
  }).pipe(res);
}

沙发 URL 是动态构建的。

req.body 包含单个项目的属性。

我是沙发新手,但我不知道如何发送多个文档以在单个操作中插入。我可以将request.post 调用按原样放入循环中,但我想这不会非常高效。

我只需要指出正确的方向即可通过其 REST API 批量插入沙发。谢谢!

【问题讨论】:

  • 你能把一个数组发送到其余的api吗?

标签: javascript node.js rest couchdb bulkinsert


【解决方案1】:

您可以使用bulk document API 插入(甚至更新)多个文档。

【讨论】:

    【解决方案2】:

    您可以使用nano - 有一个批量插入选项。

    【讨论】:

    • 这实际上是我最终使用的,以防其他人想知道。 Nano 为批量文档沙发 API 提供了一个直观的节点 API ?。我将把另一个作为答案,因为这实际上是我问题的直接答案,但 nano 确实很棒而且很轻巧。我推荐它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-20
    • 2012-02-12
    相关资源
    最近更新 更多