Carlos de Souza Rodrigues Junior
Arquiteto, Analista, Programador, devOps, faz café, busca pão, anda de kart, joga video game, da palestra e outras coisitas mais.
A evolução do Assincrono
Carlos Rodrigues
carlosrodriguesjunior@gmail.com
carlos.junior@fcamara.com.br
https://www.fcamara.com.br/vagas-ti
Tem Vagas
ExpressJs
ExpressJs With mongoDb
npm install mongodb --save
function connectMongoDB() {
return new Promise(function (resolve, reject) {
MongoClient.connect('mongodb://localhost:27017/netcoders', function (err, db) {
if (err) reject(err)
resolve(db)
})
})
}function getCollectionList(db) {
return new Promise(function (resolve, reject) {
db.collection('alunos').find().toArray(function (err, result) {
if (err) reject(err)
resolve(result)
})
})
}app.get('/', function (req, res) {
connectMongoDB().then(function(db){
return getCollectionList(db)
})
.then(function(result){
res.send(result)
})
.catch(function(err){
res.status(500).send(err)
});
})function* (){
yield promise;
}app.get('/', (req, res) => {
co(function* () {
try {
let db = yield connectMongoDB();
let result = yield getCollectionList(db);
res.send(result)
} catch (error) {
console.log(error)
res.status(500).send(error)
}
})
})
const Koa = require('koa');
const app = new Koa();
const MongoClient = require('mongodb');
const co = require('co');
app.use(async function (ctx) {
try {
let db = await connectMongoDB();
let result = await getCollectionList(db);
ctx.body = result;
} catch (error) {
ctx.body = error;
}
});By Carlos de Souza Rodrigues Junior
Arquiteto, Analista, Programador, devOps, faz café, busca pão, anda de kart, joga video game, da palestra e outras coisitas mais.