我正在尝试使用Node.js连接到Cloudant上的CouchDB数据库。
这在外壳上起作用:
curl https://weng:password@weng.cloudant.com/my_app/_all_docs
但是此node.js代码不起作用:
var couchdb = http.createClient(443, 'weng:password@weng.cloudant.com', true);
var request = couchdb.request('GET', '/my_app/_all_docs', {
'Host': 'weng.cloudant.com'
});
request.end();
request.on('response', function (response) {
response.on('data', function (data) {
util.print(data);
});
});
它给了我这些数据:
{"error":"unauthorized","reason":"_reader access is required for this request"}
如何使用Node.js列出我的所有数据库?
内置的Node.js http客户端相当低级,它不支持现成的HTTP
Basic身份验证。第二个参数http.createClient
只是一个主机名。它不希望那里有凭据。
您有两种选择:
1.自己构造HTTP基本授权标头
var Base64 = require('Base64');
var couchdb = http.createClient(443, 'weng.cloudant.com', true);
var request = couchdb.request('GET', '/my_app/_all_docs', {
'Host': 'weng.cloudant.com',
'Authorization': 'Basic ' + Base64.encode('weng:password')
});
request.end();
request.on('response', function (response) {
response.on('data', function (data) {
util.print(data);
});
});
您将需要一个Base64库,例如一个用C编写的节点库,或一个纯JS库(例如CouchDB
Futon使用的库
)。
2.使用更高级的Node.js HTTP客户端
更强大的HTTP客户端(例如Restler)将使执行上述请求(包括凭据)变得更加容易:
var restler = require('restler');
restler.get('https://weng.cloudant.com:443/my_app/_all_docs', {
username: 'weng',
password: 'password'
}).on('complete', function (data) {
util.print(data);
});
本文向大家介绍Node.js 使用Mongoose连接到MongoDB,包括了Node.js 使用Mongoose连接到MongoDB的使用技巧和注意事项,需要的朋友参考一下 示例 首先,使用以下命令安装Mongoose: 然后,将其添加server.js为依赖项: 接下来,创建数据库模式和集合名称: 创建一个模型并连接到数据库: 接下来,启动MongoDB并server.js使用运行node s
问题内容: 使用Node.js编写连接两个REST API的独立应用程序是否明智? 终点将是POS-销售点-系统 另一个将是托管的电子商务平台 将有一个用于配置服务的最小接口。而已。 问题答案: 是的,Node.js非常适合于调用外部API。就像Node中的所有内容一样,进行这些调用的功能都是基于事件的,这意味着要做一些事情,例如缓冲响应数据,而不是接收单个完整的响应。 例如: 如果要进行很多此类
问题内容: 如何使用Node.js通过SSL连接到MongoDB服务器? 我已经阅读了一些驱动程序(mongojs,mongodb- native )的源代码,并且我已经搜索了一段时间,但是似乎找不到任何合适的教程,指南或文档。 问题答案: 如评论中所建议,具有所需的一切。 我使用以下命令启动并运行: 编辑 你也可以从猫鼬做ssl :
问题内容: 我们知道不建议在Amazon实例外部访问ElastiCache,因此我们仅在Amazon EC2实例内部进行尝试。 我们有一个具有9个节点的ElastiCache Redis集群 。当我们尝试使用常规redis实现连接到它时,它会引发一些Moved错误 根据@Miller尝试了重试策略方法。还尝试过使用不稳定和稳定(可怜的人)实现的RedisCluster。 这些实现均无作用。有什么建
问题内容: 我正在尝试从Windows 7中的Node.js连接到Oracle数据库。这可能吗?我尚未找到适用于Windows的Node.js插件。有建议的解决方法吗?我猜至少还有一个人想要在Windows上使用Node.js,并且需要连接到Oracle。如果需要的话,我愿意接受简单的解决方法。谢谢您的帮助。 问题答案: 您需要直接从Node.js连接到oracle吗?您可以用另一种语言编写数据库
问题内容: 我已经阅读了一些有关如何将Mongo与Node结合使用的指南,它们似乎都以不同的方式连接到数据库。一种对我有效的特定方式是: 但是,这对我来说似乎效率低下/很奇怪,每当出现时,我就不得不重新连接到数据库,例如用于创建新用户或检索信息。 似乎更适合我的另一种方法是 我已经看到有几个网站可以按照这些方式进行操作,但是我个人无法满足上述要求。我一直在服务器端收到错误消息。因此,我的问题是,如