Files
mariadb-dev-example-blog-sa…/mariadb_nodejs/basic/server.js
2021-05-27 07:56:35 -05:00

64 lines
1.6 KiB
JavaScript

const express = require('express')
const db = require('./db')
const app = express()
const port = 8080
const bodyParser = require("body-parser");
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
// GET
app.get('/tasks', async (req, res) => {
let conn;
try {
const result = await db.pool.query("select * from tasks");
res.send(result);
} catch (err) {
throw err;
} finally {
if (conn) return conn.release();
}
});
// POST
app.post('/tasks', async (req, res) => {
let task = req.body;
console.log(task);
let conn;
try {
const result = await db.pool.query("insert into tasks (description) values (?)", [task.description]);
res.send(result);
} catch (err) {
throw err;
} finally {
if (conn) return conn.release();
}
});
app.put('/tasks', async (req, res) => {
let task = req.body;
let conn;
try {
const result = await db.pool.query("update tasks set description = ?, completed = ? where id = ?", [task.description, task.completed, task.id]);
res.send(result);
} catch (err) {
throw err;
} finally {
if (conn) return conn.release();
}
});
app.delete('/tasks', async (req, res) => {
let id = req.query.id;
let conn;
try {
const result = await db.pool.query("delete from tasks where id = ?", [id]);
res.send(result);
} catch (err) {
throw err;
} finally {
if (conn) return conn.release();
}
});
app.listen(port, () => console.log(`Listening on port ${port}`));