问题标签 [couchdb-nano]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 使用 AngularJS 将数据从 3rd 方 API 保存到 CouchDB
我有一个使用 AngularJS 构建的工作前端应用程序。它与几个 3rd 方 API 交互,并且可以毫无问题地获取数据。
该应用程序的下一步是在每次进行搜索时将此数据存储到 CouchDB 中。我想一点一点地构建我自己的数据库并最终依赖它而不是第 3 方 API(例如,应用程序首先对我的数据库进行查询,如果它没有找到需要的内容,则从第 3 方 API 中获取,在前端显示它,但它也将它保存在我的数据库中,所以下次进行相同的搜索时,结果将来自我的资源)。
我需要使用 nodejs 和一些模块(express、nano 等)还是只能依靠 AngularJS 将数据写入数据库?
couchdb - 获取 couchdb 中所有视图名称的列表
是否可以使用 [dscape/nano][1] 获取 couchdb 中数据库的所有视图的列表?我可以通过 curl 请求得到的最接近的是:
以上返回所有视图,包括 javascript 函数。但我只想提取视图名称。
node.js - Nodejs 从 CouchDB 流式传输视频并显示在视频标签中
我正在尝试使用 NodeJS 中的 nano 中间件从 CouchDB 流式传输视频附件。在浏览器上接收视频。我不知道我应该如何在客户端上流式传输它以及如何在 HTML 标记中显示它。
这是我从这里找到的从 CouchDB 读取附件的 NodeJS 代码:
在客户端,我的 ajax 调用如下所示:
在 HTML Video 标签中是这样的:
我不确定 Blob 是否是将视频流式传输到 Video 标签的正确方法。我应该如何将流附加到视频标签?
编辑 :
你是对的brinchirls。有用!我已经设置了视频网址。但是我在视频标签中得到的是:
但是当我点击播放时,它不会播放视频。但是,当我单击检查元素中的链接时,它会在新的浏览器窗口中播放视频。
这个解决方案几乎就在那里。
express - 使用 Node.js Express 4.0 和强大的 couchdb (nano) 的多个图像附件
我正在尝试使用 express 4 和强大的功能通过 nano 将多个图像插入到 couchdb。我可以使用 formidable 和 nano 毫无困难地访问和插入单个文件,但是,当我尝试一个接一个地插入一个文件时,我会遇到冲突错误。我对 js 和 node 很陌生,我知道我对回调和异步函数的理解是有限的。这就是我目前所拥有的。任何帮助将不胜感激。
};
node.js - 使用 nodejs 构建 CouchDB
有没有人对使用真正 DAL 的 CouchDB 有任何经验?CouchDB 不像其他任何数据存储,尤其是。由于它的视图概念为数据添加了有趣的动态 - 业务逻辑分离......更不用说控制应用程序源代码的修订版了。
旁注:像 Nano 这样的库不是 DAL。它们类似于数据库驱动程序。直接从业务逻辑中使用 Nano 会将应用程序绑定到 CouchDB。不是我想要的。相反,我定制的 DAL 使用 Nano 作为驱动程序,但将业务逻辑与 Nano 完全分离。
问题:我应该阅读任何最佳实践或文件吗?任何现有的 DAL 可以在 MongoDB 和 CouchDB 之间切换以处理常见的事情(作为我想要做的事情的起点)?
javascript - 用于检查 CouchDB nodejs nano 中是否存在文档的自定义函数
我一直在谷歌上寻找答案,根据找到的结果,我可以使用 nano 模块检查 CouchDB 中是否存在表。
但是,当我尝试使其成为自定义函数时,无论如何它总是返回“未定义”。这是功能:
称它为:
这里到底出了什么问题?我似乎无法正确弄清楚。
javascript - 处理 409 冲突文档 nodejs nano couchdb
我一直在对这个问题进行一些研究,couchdb 给出了太多的文档冲突。
我已经看到一个解决方案在 nano 中更新 CouchDB 文档,这样说:
- 获取文件
- 保存_rev
- 应用更改
- 尝试使用保存的 _rev 发送更新的文档
- 如果是 409,请转到步骤 1
我试图生成一个函数来完成它,直到最后一步:
这接近我的预期,但是,如果我打开 2 个窗口连续发出相同的请求,它将达到 2 个文档冲突导致我的服务器崩溃的地步。
所以,通过说'5。如果出现 409',请转到步骤 1,这是否意味着我必须递归调用相同的函数?如果文档继续冲突,那肯定是一个无限循环,我的服务器将再次崩溃。目前,我正在做的是每 5 秒不允许超过 1 个请求,但这在未来不会做得很好。
如何在 nodejs 中使用 nano 正确处理 409 个冲突的 CouchDB 文档?
node.js - 在 node.js 中的流中事情发生的顺序是什么
我试图了解 node.js 流中发生的事情的顺序。我正在运行的脚本需要一组名称/电子邮件对,在该集合上运行,为每个集合创建一个 couchdb 条目,然后生成一个 QR 码并将其插入到该 couchdb 条目中。
这是代码:
当我运行这个脚本(有 6 封电子邮件,而不仅仅是 3 封)时,我得到的是这样的:
我想了解的是为什么我以这种半错开的顺序获取日志,而不是一个“沙发图像回复”,然后是一个“成功创建 # 个票证”。
任何帮助都会摇滚!
更新Ahhhh,我正在学习 :) 好的,所有的 forEach 函数都会立即触发。去节点!这是荒谬的。好吧,还有一个问题……
如果图像插入没有错误回复,我如何才能让“#票已成功发布”日志仅触发?我可以将 code.on('end') 放在 couchdb 回调中吗?不不,那是在管道内,这将是非常令人困惑的……我有点迷路了。
javascript - couchdb/nano 多部分插入
我正在尝试使用 nano 插入带有多个图像附件的文档。以下测试用例运行没有失败:
但是,当我尝试使用蒲团查看图像时,它们似乎损坏了,如果我下载图像并尝试打开它们,我被告知“错误解释 JPEG 图像文件(不是 JPEG 文件:以 0x2f 0x39 开头)” .
这些文件的大小大致正确(在服务器上稍微大一点,但不是很大),所以我猜有一些格式错误。也就是说,我已经尝试将二进制和 utf8 作为编码值,但我不确定还能做什么。
node.js - 使用带有 nano 和 couchdb 的节点时 ECONNREFUSED
直到今天,我一直在成功地为我的应用程序使用 nodejs + nano + couchdb。出于某种原因,当我尝试运行我的应用程序时,我突然变得 ECONNREFUSED。如果我尝试使用 Web 浏览器或使用不同的应用程序(Java 应用程序)查询数据库,它工作正常。我不确定为什么只是在这种情况下它停止工作。过去两天我一直在研究,找不到任何帮助。我相信这可能与太多的开放连接有关,但这有点超出我的知识范围。任何人都可以为我提供有关调试此问题的任何见解或我可以进入的任何方向吗?我应该提到这个 couchdb 住在 iriscouch