Con solo unas pocas líneas de código puedes empezar a usar Couchbase con Node.js para crear tu próxima aplicación de JavaScript.
Este hola mundo el tutorial te guía a través de los primeros pasos básicos de uso el SDK de Node.js con el últimas características de Couchbase 7.0. Se asume que tienes al menos cierta familiaridad tanto con JavaScript como Bases de datos NoSQL – pero no se requiere experiencia.
Instalar y preparar Couchbase
Antes de sumergirte en el desarrollo de una aplicación, comienza por configurar la última versión de Couchbase Server o regístrese gratis para obtener una cuenta de Couchbase Cloud.
After installation, set up the travel-sample Bucket which creates a set of sample documents with flights, hotels, landmarks and more. You’ll find this data handy for testing a range of different kinds of applications.
Configurar una aplicación básica de Node.js
Por el resto de esta publicación, asumiré que ya tienes Node.js instalado junto con tus herramientas de edición de código favoritas. (Los desarrolladores primerizos deben buscar algunos tutoriales básicos para obtener un entorno de trabajo).
Su primer paso es crear una carpeta de proyecto e inicializar la plantilla de paquete con npm init -y, como se muestra a continuación:
tyler@local:~/src/cb-node$ npm init -y
Wrote to /home/tyler/src/cb-node/package.json:
{
"name": "cb-node",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo "Error: no test specified" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC"
}
Agregar la dependencia del módulo de Node.js para Couchbase
A continuación, agregue el módulo de Node.js de Couchbase a las dependencias en package.json al ejecutar el npm install comando con el --guardar opción, así:
$ npm install couchbase --save
> couchbase@3.2.0 install /home/tyler/src/cb-node/node_modules/couchbase
> prebuild-install || node-gyp rebuild
...
npm WARN cb-node@1.0.0 No description
npm WARN cb-node@1.0.0 No repository field.
+ couchbase@3.2.0
El package.json el archivo ahora tiene la sección de dependencias:
"dependencies": {
"couchbase": "^3.2.0"
}
Conectarse a un clúster de Couchbase
Para probar que todos los módulos estén instalados correctamente –y que puedas conectarte al clúster–, necesitas saber el nombre del bucket para conectarte y agregar un usuario que pueda acceder al bucket de Couchbase.
var couchbase = require("couchbase");
Para el uso más simple, envuelve el resto del ejemplo en una función connect:
couchbase.connect(
'couchbase://127.0.0.1',
{
username: 'Administrator',
password: 'Administrator'
},
...)
También debes seleccionar el espacio de claves, es decir, Ámbito o Colección(es) – usted desea acceder, si corresponde. En este caso de prueba inicial, usaremos una Colección predeterminada que ignora por completo los Ámbitos y las Colecciones:
...
(err, cluster) => {
var bucket = cluster.bucket('travel-sample')
var coll = bucket.defaultCollection()
...
Obtener un documento JSON
Hay miles de muestras JSON documentos en el travel-sample Balde.
Para solicitar un documento utilizando operaciones básicas de clave-valor, utilice el conseguir función y proporcione un ID de documento. Puede usar la consola web para buscar un documento de hotel determinado para obtener el ID, como se muestra a continuación.
Capture la respuesta y el error, luego imprima en la consola para ver si es exitoso.
coll.get('hotel_5336', (err, res) => {
if (err) throw err
console.log(res.value)
Si llegó hasta aquí y es su primera aplicación de Node.js, ¡felicitaciones! Ahora sabe cómo obtener un documento de Couchbase con la sintaxis más sencilla. El código completo de ejemplo se muestra a continuación:
var couchbase = require('couchbase')
couchbase.connect(
'couchbase://127.0.0.1',
{
username: 'Administrator',
password: 'Administrator'
},
(err, cluster) => {
var bucket = cluster.bucket('travel-sample')
var coll = bucket.defaultCollection()
coll.get('hotel_5336', (err, res) => {
if (err) throw err
console.log(res.value)
})
}
)
Tenga en cuenta que este es un ejemplo básico que incluye código bloqueante. En un artículo futuro, abordaré un ejemplo que muestra ejemplos asíncronos no bloqueantes en su lugar.
Crear o actualizar un documento usando JavaScript
Para crear un nuevo documento puedes usar el actualizar o insertar función. Se llama actualizar o insertar porque actúa como un insert (para documentos nuevos) o si ya hay un documento con el mismo ID, simplemente lo actualizará.
Ensure that the user you specify has adequate write privileges before trying an actualizar o insertar. The examples below assume full Bucket administrative access to keep things simple.
En este punto, copia tu script en un nuevo archivo para probar el actualizar o insertar funcionalidad independiente de la conseguir función.
Actualizar o insertar requiere un ID de documento y un objeto JSON con los datos del documento. Proporcionas el ID al enviarlo a la base de datos. Crea la variable para almacenar los datos JSON y agrégale algunos elementos.
newdoc = {
type: "hotel",
id: 2,
name: "Le Grande",
city: "Paris, France"
}
A continuación, llame al actualizar o insertar función junto con el nuevo ID de documento.
coll.upsert('hotel_2', newdoc, (err, res) => {
console.log(res)
})
Imprimir la salida para mostrar que una mutación o transacción se ha completado. El CAS el valor se utiliza en otros contextos para comparar la antigüedad de los datos con el fin de rastrear o bloquear diferentes versiones de los datos.
La ejecución del script produce el siguiente resumen de transacción:
$ node app.js
MutationResult {
cas: CbCas<1628915917601505280>,
token: CbMutationToken<4:251812459673841:85:travel-sample> }
Now you can go back to your original conseguir script and drop in the new document ID to test that it can now be retrieved.
Here is the full script for doing the simple actualizar o insertar in a standalone Node.js script.
var couchbase = require('couchbase')
couchbase.connect(
'couchbase://127.0.0.1',
{
username: 'Administrator',
password: 'Administrator'
},
(err, cluster) => {
var bucket = cluster.bucket('travel-sample')
var coll = bucket.defaultCollection()
newdoc = {
type: "hotel",
id: 2,
name: "Le Grande",
city: "Paris, France"
}
coll.upsert('hotel_2', newdoc, (err, res) => {
console.log("Hotel added")
console.log(res)
})
}
)
Conclusión
Gracias por seguir estos ejemplos básicos de JavaScript con Couchbase. Espero que esto te ayude a comenzar a construir una aplicación NoSQL usando Node.js.
Para obtener más ejemplos relacionados con el SDK consulta la documentación del SDK de Node.js. En publicaciones futuras, exploraremos el uso de las funciones de forma asincrónica y profundizaremos en otras funciones de Couchbase como query y search.
Ponte al día con el resto de la serie de tutoriales de Node.js + Couchbase:
- Cómo empezar con el SDK de Node.js para Couchbase
- Cómo crear llamadas Get/Upsert asíncronas con Node.js y Couchbase
- Desarrollar una aplicación basada en REST con Node.js, Express y Couchbase
- Cómo consultar datos JSON usando N1QL para Node.js y Couchbase
- Cómo agregar funcionalidad de búsqueda de texto completo a tu aplicación de JavaScript
¿Quieres probar estos ejemplos por ti mismo?
Regístrese en Couchbase Cloud hoy mismo
Autor
Una respuesta
-
[...] la publicación continúa mi serie introductoria sobre el uso de Node.js con Couchbase (incluyendo la publicación de la semana pasada sobre async [...]


Deja un comentario
Lo siento, debes estar conectado para publicar un comentario.