Tag: couchdb

带有websocket接口的数据库?

CouchDB有一个http接口,可以从服务器和客户端访问。 有没有像这样的websocket接口存在? 在此先感谢您的任何信息!

请求反馈:使用客户端复制(pouchdb)为多个用户/帐户设置Couchdb

在进入开发阶段之前,我希望获得关于我正在考虑的改变的反馈意见,从mongo移动到沙发。 基本上我有一个webapp,用来帮助组织用户活动(todolist,日历,笔记,日记)。 它目前使用mongodb,但我正在考虑将其移动到沙发上,主要是由于沙发的复制能力和clientdb交互(pouchdb)。 我在浏览器上使用了localstorage,在mongo的支持下有一个类似的本地安装,但是我正在寻找一个更成熟的解决scheme。 由于couchdb与mongodb不同,我想每个用户都应该有自己的沙发数据库,​​他们的文档是我的每个应用程序组件。 基本上我必须通过本地数据库复制以及安全性来将所有事情都提高一级。 我有3个问题。 1)我认为沙发没有文档级别的安全/authentication,对吗? (因此,我把每个用户的资产移动到他们自己的数据库,好主意?) 2)我的计划是有用户login到网站,然后我的后端nodejs代码validation他们,并发送一些auth /会话令牌。 然后,客户端上的javascript使用其本地pouchdb数据来设置自身,并将复制请求直接发送到couchdb服务器(使用从服务器端进程获得的auth令牌)。 他们应该只能访问他们的数据库,因为我可以做每个数据库身份validation访问(正确?)你怎么看待这个设置? 它应该工作? 3)关于couchdb服务提供商,为什么他们的沙发版本差异如此之大? IE,happycouch,1.6.1,虹膜1.5,cloudant,1.0.2? 而且我也听说有关couchdb 2.0即将推出…我想要使用cloudant,但1.0.2是从1.6或1.5以上的版本,如果我没有做任何异国情调,这有什么关系? 奖金问题:从上一个问题继续,你知道任何服务,主机node.js和本地实例的couchdb可用? 我想用我的后端服务器代码作为代理,但不以牺牲另一个networking跳跃为代价。 保罗,非常感谢你的反馈

错误:连接ENFILE 127.0.0.1:5984 – 本地(undefined:undefined)

我不断收到这个pouchDB错误,我不知道这是什么。 Error: connect ENFILE 127.0.0.1:5984 – Local (undefined:undefined) at onError (/Users/thomas/Desktop/rain/node_modules/pouchdb/lib/deps/ajax/ajaxCore.js:53:18) at Request._callback (/Users/thomas/Desktop/rain/node_modules/pouchdb/lib/deps/ajax/ajaxCore.js:103:14) at self.callback (/Users/thomas/Desktop/rain/node_modules/request/request.js:198:22) at emitOne (events.js:77:13) at Request.emit (events.js:169:7) at Request.onRequestError (/Users/thomas/Desktop/rain/node_modules/request/request.js:867:8) at emitOne (events.js:77:13) at ClientRequest.emit (events.js:169:7) at Socket.socketErrorListener (_http_client.js:265:9) at emitOne (events.js:77:13) at Socket.emit (events.js:169:7) at emitErrorNT (net.js:1253:8) at doNTCallback2 (node.js:450:9) at process._tickCallback (node.js:364:17)

在CouchDB中使用require()或//!json,!代码?

在CouchDB权威指南中 ,作者说你可以使用: // !json templates.edit // !json blog // !code vendor/couchapp/path.js // !code vendor/couchapp/template.js 但是,为什么使用这些macros,当你可以使用require()? 有没有我想要使用macros的场合呢?

我应该使用MongoDB或CouchDB或其他?

我正在开发一个监控系统,使用node.js + Redis来从网页上读取HTTP响应,并决定是否启动或closures。 但是,我每分钟都在做这个,我需要存储结果以显示给最终用户。 我应该如何以及使用哪个数据库来保存数据并几乎实时显示? 即使我没有几个网站被监控,因为我每分钟得到一个响应,都会有大量的数据显示出来。 谢谢

node.js可以像CouchApp那样执行从CouchDB获取的JavaScript函数吗? 怎么样?

快速浏览是这样的:对于我的web应用程序,我可以使用CouchApp和CouchDB视图等来编写我的大部分function。我喜欢CouchApp的function,通过复制将我的代码推送到服务器 – 这使得部署周期非常简单。 但是,为了完成一些不受couchdb支持的任意工作,并且需要在CouchDB之前设置一个Web平台。 我正在考虑在node.js中构build它,因为它使用JavaScript,并且我想继续将代码推入数据库的简单部署方法。 下面是我想象它的工作原理: – 我使用常规方法和node命令在node.js中编写Web服务器/服务来启动它。 – 这个服务连接到沙发数据库,​​并获得虚拟列表和URL映射列表。 该列表存储在redis中用于快速查找。 这个列表将告诉服务器,当它获得一个请求时,基于主机和path等,哪个处理器将被运行。 – 服务器获取处理程序 – 这只是一个文档,它可能是一个devise文档或在couchdb中的任意json文档。 然后执行该处理程序来处理请求,就像我将处理程序写入节点js的一部分一样。 所以问题是,如何获得一个儿子数据结构,其中包含一个JavaScript函数,文本forms,并执行该function? 这可能是非常明显的,但我来自编译的背景,所以通常会有一个编译步骤,这使得这几乎是不可能的。 所以,我在想的是在伪代码:var string code = getValueForMapKey(handlerFunctionIWant); somehowmagicallyexecute(导出代码) 有没有一个执行或运行function,将在JavaScript中执行上述神奇的执行步骤?

使用Node.js检索来自couchdb的所有文档

我正在写一个简单的testing应用程序来实验node.js和couchdb的function,到目前为止我很喜欢它,但是我遇到了麻烦。 我已经find和广泛,但似乎无法find答案。 我的testing服务器(一个简单的地址簿)有两件事情: 如果用户转到localhost:8000/{id}那么我的应用程序返回该用户的名称和地址与该ID。 如果用户转到localhost:8000/那么我的应用程序需要返回一个列表超链接的名称,并把它们带到页面localhost:8000/{id} 。 我能够得到第一个要求的工作。 我似乎无法find如何从我的couchdb检索所有名称的列表。 这是我需要帮助。 这里是我的代码: var http = require('http'); var cradle = require('cradle'); var conn = new(cradle.Connection)(); var db = conn.database('users'); function getUserByID(id) { var rv = ""; db.get(id, function(err,doc) { rv = doc.name; rv += " lives at " + doc.Address; }); return rv; } function GetAllUsers() { var […]

获取CouchDB数据库中最近更改的所有文档

使用以下代码: db.changes({'include_docs':true}).on('response', function (res) { res.on('data', function (change) { console.log(change); }); }); 我能够获取数据库中已更改的所有(新旧)文档,但是如何才能获取最近已更改的文档?

PAAS上的PouchDb(Heroku,Bluemix等)

我从Stackoverflow得到了一些很好的反馈,并想检查一个更多的想法。 目前我已经有一个在PAAS上运行nodejs的Web应用程序(Heroku并尝试使用bluemix)。 服务器正在configuration为与Couchdb(托pipe在云中)通信。 有两种types的数据保存到数据库,第一,用户数据(每个用户将拥有自己的数据库),第二,应用程序数据本身(指标,用户帐户信息(授权/pipe理的东西)。 从这里得到一些很好的反馈意见后,他们的想法是,用户login后,他们会同步本地(浏览器)pouchdb实例与Cloudant(可能通过我的服务器代理,如这里推荐)。 现在的问题是,对于应用程序/pipe理数据,也许我在我的服务器上运行一个couchdb实例,所以我不会重复networking调用像用户login,度量数据等事情。数据不会很大,已经从用户数据调用中分离出来了。 重点是有一个更快/本地身份validation主要实例,更改/更新同步用户请求之外。 后端是在快速的web框架,它看起来像我的选项是pouchdb ….同步到Cloudant实例? 如果我希望本地数据库访问(支持Couchdb实例),在PAAS上运行的节点/快递服务器上,是build议的设置? 感谢vm的任何反馈,保罗

使用node.js,nano和CouchDB进行身份validation

在初始化后,有没有办法在nano中更改configuration参数? 我想通过以下方式启动nano: nano = require('nano')('http://127.0.0.1:5984') 并在用户提交login表单后更改用户名和密码。 我总是得到一个错误: nano.cfg.user = params.user.name TypeError: Cannot set property 'user' of undefined 或者我应该分叉纳米和写一个身份validationfunction来调整值?