Connessione a FaunaDB con Express.js
FaunaDB è un database NoSQL in cloud.
Ha a disposizione anche un piano gratuito che basta e avanza per molte applicazioni.
Volendo supporta GraphQL, ma io sto usando il linguaggio FQL.
Devo dire che in generale, rispetto ad altre alternative del genere, mi piace; ma manca di una buona documentazione per i vari linguaggi.
Oggi vediamo come usarlo con Javascript ed Express.js.
Prima di tutto installate la libreria:
npm install ---save faunadb
Qui sotto il codice Javascript:
const express = require('express');
const router = express.Router();
const faunadb = require('faunadb');
const q = faunadb.query;
const client = new faunadb.Client({
secret: 'API-KEY'
});
router.get('/', function (req, res, next) {
console.clear();
client.query(
q.Map(
q.Paginate(q.Match(q.Index('all_titoli'))),
q.Lambda('X', q.Get(q.Var('X')))
))
.then((ret) => {
ret.data.forEach((item) => {
console.log(item);
});
return res.json(ret.data);
})
.catch((err) => {
return res.json(err);
});
});
router.get('/add', function (req, res, next) {
console.clear();
client.query(
q.Create(
q.Collection("musica"), {
data: {
"titolo": "titolo3",
"autore": "autore3"
}
}
)
).then((ret) => {
console.log(ret);
}).catch((err) => console.error('Error: %s', err));
});
module.exports = router;
Considerazioni:
- l'API-KEY la dovete creare nel vostro pannello di controllo
- all_titolo è un indice che sta ad indicare che vogliamo visualizzare tutti i records; gli indici li dovete creare voi nel vostro pannello, ed indicare a quale collezione fa riferimento
- dal server invio tutto il JSON; l'elaborazione dovrete farla poi lato client
Enjoy!
javascript nodejs expressjs faunadb
Commentami!