安装与入门

Node.js是一个轻量级平台,它构建在V8 JavaScript引擎上,用于开发高效的可扩展网络应用程序。Node.js是为数据密集型实时应用而设计的。Couchbase提供了一个Node.js客户端库,用于访问存储在Couchbase服务器中的文档(documents)。Node.js客户端库具有对JSON的内置支持,并随着扩展的Couchbase集群自动缩放。使用CoucBaseServer与Node.js客户端库来对存储在Couchbase中的文档执行CRUD(创建、检索、更新、删除)操作。我们还将使用视图查询CoucBase Server。

  • 设置环境

  • 与Couchbase服务器连接

  • 在Couchbase服务器中创建文档

  • 获取文件

  • 更新文件

  • 删除文件

设置环境

  • 安装 Node.js

自行搜索安装

node --version

使用下面的脚本创建一个测试服务玩一玩

var http = require('http');
http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello World\n');
}).listen(3003, '127.0.0.1');
console.log('Server running at http://127.0.0.1:3003/');

使用下面的命令运行

node example.js

输出结果

Server running at http://127.0.0.1:3003/

访问测试

curl http://localhost:3003/

结果:

Hello World
  • 安装 Couchbase的Node.js 客户端类包

nodejs 类包的->github地址

安装参见:https://www.npmjs.com/package/couchbase

npm install couchbase

CURD操作

var couchbase = require('couchbase');
var cluster = new couchbase.Cluster('couchbase://127.0.0.1');
// For Couchbase > 4.5 with RBAC Auth
cluster.authenticate('username', 'password')
var bucket = cluster.openBucket('default');

bucket.upsert('testdoc', {name:'Frank'}, function(err, result) {
  if (err) throw err;

  bucket.get('testdoc', function(err, result) {
    if (err) throw err;

    console.log(result.value);
    // {name: Frank}
  });
});
  • new couchbase.Cluster

Node.js客户端库提供集群类以与Couchbase服务器连接,并创建包含桶的单个集群。在应用程序中只需要一个集群类的实例。也可以使用新运算符创建新的集群实例。

看底层源码可看到提供了两个参数

function Cluster(cnstr, options)

参数

描述

cnstr

连接集群的字符串 cnstr可选, 默认为couchbase://127.0.0.1:8091

options

类型对象的参数,该对象包含要传递给连接的选项/属性列表。唯一支持的选项是certpath,这是用于SSL连接的证书的路径。 options参数是可选的。

  • openBucket(name, password, callback)

Cluster类提供openBucket(name, password, callback)方法来打开桶,用于桶的后续操作。openBucket方法是异步的,并立即返回。在返回的方法之后,桶上的操作可以排队。当建立与桶的连接时,运行排队操作。openBucket方法返回桶类的实例,该实例表示与Couchbase Server桶的连接。桶类不能直接实例化。创建一个回调函数,该函数对于Couchbase方法生成的错误(如果有的话)具有一个err参数。输出错误(如果有的话),或者输出一条消息以指示已经建立连接。

Last updated

Was this helpful?