问题标签 [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.

0 投票
3 回答
1834 浏览

typescript - 如何导入 nano (couchdb) - 打字稿

在我的节点应用程序中导入和使用 nano 时遇到问题。

js方式(来自文档)是:

我如何用打字稿做到这一点?

我试过了

但后来我得到:纳米不是一个物体。

0 投票
1 回答
71 浏览

javascript - 获取 409 尝试通过 Sync Gateway 将附件插入现有文档

我正在尝试向现有文档添加附件。我正在使用nano库发送数据和附件,以便以后通过 CBLite 访问。

我创建的那些文件db.attachment.insert似乎很好。但是,现在我需要为每个文档添加多个附件,我遇到了 409 问题。具体来说,我得到:

409

文件存在

我已确认正在发送当前版本。

```

0 投票
1 回答
630 浏览

javascript - 如何使用 couchdb nano 进行搜索

我正在尝试使用 nano 搜索 couchdb,如下所述:

https://github.com/dscape/nano#dbsearchdesignname-searchname-params-callback

但我得到“文件缺少附件”。

编辑这是我的视图代码:

0 投票
1 回答
320 浏览

javascript - 使用 nano-promises 强制同步 CouchDB 查询和更新

我正在使用 nano-promise 尝试强制 node.js 中的以下代码串联运行。但是,在第一个 CouchDB 插入完成之前,以下承诺似乎仍然完成。这会导致一个问题,因为后面的 Promise 将包含查询 CouchDB 的代码,并期望前面步骤中的代码是完整的。我相信这个问题是因为在 db.get 之后和 db.get 完成之前立即执行 return 。有没有人对如何解决这个问题有任何建议?

这段代码的输出是:

输出应该是:

0 投票
1 回答
779 浏览

javascript - 插入到 couchdb 数据库后找不到/丢失的文档

我正在尝试创建一个名为“_users”的简单数据库,并使用 Couch-DB 将新用户插入其中。

我在 shell 中使用 Node 来运行以下代码:

用户配置文件.js

节点复制

运行此程序后,我希望在 处看到一个条目/_users/cheese,但不存在任何条目。我做错了什么吗?

0 投票
1 回答
357 浏览

node.js - nodejs:异步 nano/express 的多个 GET 请求不起作用

我在 node.js 和 express 上遇到了一个非常奇怪的错误,这让我已经疯了两天了。

我想在我的网络应用程序上显示一系列图像。因此,我从客户端向我的 express API 发送一个 GET 请求,然后它应该传递图像。

它完美地适用于每页只有一个图像。

但是,如果我想显示一系列图像,比如说 8 张图像,只渲染最后一张图像!但是顺序偶尔会发生变化,有时是倒数第二个图像有效,它以完全随机的顺序洗牌!

但这不仅仅是图像的问题——所有(异步)请求的行为都是一样的!例如,如果我想将一些用户名渲染到 iframe,我只获取最后一个 iframe 的数据,所有其他人都显示 404 错误,无法获取。

这是我在前端的代码:

这是我在服务器端的代码

我的猜测是它与 ASYNC 函数有关

因为我从来没有遇到过标准同步功能的问题(req, res)

我究竟做错了什么??

编辑我对下面的代码有同样的问题。

它适用于 1 个 GET,但不适用于 8 个同时 GET 请求。另外,我在日志中收到此错误:

0 投票
0 回答
175 浏览

node.js - 当 require_valid_user = true 时 Nano.auth 失败

以下是我引用此文档的示例代码:

https://github.com/dscape/nano#using-cookie-authentication

当我的require_valid_user = false

但是,当我设置时require_valied_user = true,它失败并出现以下错误:

名称:'错误',错误:'未经授权',原因:'需要身份验证。',范围:'couch',状态代码:401,请求:{方法:'POST',标题:{'content-type':'应用程序/x-www-form-urlencoded; charset=utf-8',接受:'application/json'},uri:' http://localhost:5984/_session ',正文:'name=test&password=123123'},标题:{'www-authenticate': 'Basic realm="server"',日期:'Fri, 29 Dec 2017 06:42:10 GMT','content-type':'application/json','cache-control':'must-revalidate',statusCode :401,uri:' http://localhost:5984/_session '},错误:

我不确定我做错了什么,因为它应该双向工作?

0 投票
0 回答
1892 浏览

node.js - 如何在 Vue 应用程序中存储模块要求所需的凭据

我开发了一个 Vue 应用程序,它仅在用户使用正确的凭据登录后才从 CouchDB 后端获取其数据。当前状态要求用户在每次重新加载浏览器时都输入登录信息,并且还会将登录信息暴露在浏览器中。我正在寻找一种保存凭据的方法(可能是 cookie,最好是一种以 vue 为中心的方式),因此它们可用于要求需要它们的模块。

用户会看到以下 HTML,这是凭据信息的来源。

登陆页面.vue

这是身份验证功能:

登陆页面.vue

这会导致加载使用模块中的函数获取的数据Store。商店看起来像这样:

store.js

有没有更好的方法来存储凭据,以便:

  1. 它们不会在刷新时丢失,

  2. 它们不会在浏览器中公开给任何有 JavaScript 访问权限的人访问吗?

0 投票
1 回答
333 浏览

node.js - cloudant couchdb 多部分插入抛出 function_clause 错误

我正在尝试使用以下代码将媒体文档插入到 cloudant couchdb。

在 cloudant couchdb 中创建了文档,我们也可以查看上传的附件,但是回调函数返回错误,如下所示。

请在下面找到图片。 试图附加的图像

0 投票
3 回答
484 浏览

javascript - 在 Typescript 中导入 CouchDB Nano 6.4 类型

我想在带有 Typescript 的 NodeJS 应用程序中使用 CouchDB 作为数据库后端。CouchDb-Nano用于此目的,因为它提供了所需的 Typings。所以我安装了两个包:

我为正确的 TS 导入语法找到了这个问题。它对我不起作用。通过玩耍,我发现了以下编译:

但是我在 VS 代码中的智能感知似乎完全不同。例如,文档说 nano 有一个名为的属性db,其中有几种用于选择数据库的方法:

var alice = nano.db.use('alice');

这段代码给了我一个错误,没有调用的属性db存在。Intellisense 仅将我显示auth, config, session为属性:

VS Code 智能感知截图

根据comment-header,打字是针对couchdb-nano(没有其他项目也称为nano)以及这里使用的6.4版。

那么我做错了什么?