如何批量插入CouchDB文档?

问题描述 投票:0回答:2

我的任务是修改遗留应用程序,以便用户可以批量上传工资单调整。目前,他们必须填写表格并逐项输入数据,然后在每一项之后点击提交。我让他们能够一次上传包含大量调整的 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);
}

Couch URL 是动态构建的。

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

我是 Couch 的新手,但我不确定如何在一次操作中发送多个文档以供插入。我可以将

request.post
调用按原样放入循环中,但我想这不会非常高效。

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

javascript node.js rest couchdb bulkinsert
2个回答
4
投票

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


0
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.