初学者问题。
下面是 Cradle CouchDB 文档中给出的示例:https://github.com/cloudhead/cradle
什么是 http://living-room.couch?
什么是5984?
new(cradle.Connection)('http://living-room.couch', 5984, {
cache: true,
raw: false
});
我正在尝试从我的沙发数据库获取信息:
网址: subdomain.mywebsite.com
节点端口:12345
Couchdb 端口:67891
我已经尝试了使用上述代码进行连接的不同方式,但是出现以下错误。
正确的连接方式是什么?
17 May 09:50:57 - [nodemon] restarting due to changes...
17 May 09:50:57 - [nodemon] ./test_couch.js
17 May 09:50:57 - [nodemon] starting node
Server running somewhere
request starting...
request starting...
node.js:181
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: ECONNREFUSED, Connection refused
at Socket._onConnect (net.js:602:18)
at IOWatcher.onWritable [as callback] (net.js:186:12)
17 May 09:51:05 - [nodemon] app crashed - waiting for file change before starting...
来自您发布链接的同一文档,但仅在此 JS 文件的代码文件夹中 https://github.com/cloudhead/cradle/blob/master/lib/cradle.js
cradle.Connection = function Connection(/* variable args */) {
var args = Array.prototype.slice.call(arguments),
host, port, remote, auth, options = {};
args.forEach(function (a) {
if (typeof(a) === 'number' || (typeof(a) === 'string' && /^d{2,5}$/.test(a))) {
port = parseInt(a);
} else if (typeof(a) === 'object') {
options = a;
host = host || options.host;
port = port || options.port;
auth = options.auth;
} else {
host = a;
}
});
因此,它采用您给它的任何参数,并将其切成一个数组。
什么是5984?
它是要连接的端口,正如我共享的这段代码片段所证明的那样。
它实际上接受三种类型的参数,一个端口(长度在 2 到 5 位之间)编号、一个字符串和一个用于配置的对象。
您可以只提供一个对象并将其部分声明为:
new(cradle.Connection)({
host: 'http://living-room.couch',
port: 67891,
cache: true,
raw: false
});
它会同样工作