const express = require('express')
const app = express()
const port = process.env.PORT
app.use(express.json())
// Get Connection Pool
const pool = require('./config/database');
// Create Routes
app.get('/api/users', getAllUsers);
app.post('/api/users', createUser);
async function getAllUsers(req,res){
const result = await pool.query("select * from users");
res.status(200).json(result[0]);
}
async function createUser(req,res){
let user = req.body;
let params = [ user.name, user.email, user.password, user.role];
const result = await pool.query("insert into users (name,email,password,role) values ( ?,?,?,?)", params);
res.status(201).json({id:result[0].insertId});
}
// Create Commmon Error Handler
app.use(function (err, req, res, next) {
console.log("common error handler")
console.error(err);
res.status(500).json({errorMessage:err.message});
})
app.listen(port, () => console.log(`app listening on port port!`))
const express = require('express');
const router = express.Router();
// Get Connection Pool
const pool = require('./config/database');
// Create Routes
router.get('/', (req, res) => res.send('REST API is working!'));
router.get('/users', getAllUsers);
router.post('/users', createUser);
async function getAllUsers(req,res){
const result = await pool.query("select * from users");
res.status(200).json(result[0]);
}
async function createUser(req,res){
let user = req.body;
let params = [ user.name, user.email, user.password, user.role];
const result = await pool.query("insert into users (name,email,password,role) values ( ?,?,?,?)", params);
res.status(201).json({id:result[0].insertId});
}
module.exports = router;
Note: Instead of mapping - /api/users , we can use just /users in router.js ( /api is already added in app.js)
app.js
const express = require('express')
const app = express()
const port = process.env.PORT
app.use(express.json())
// Create Routes
const apiRoutes = require('./router');
app.get('/api', apiRoutes);
// Create Commmon Error Handler
app.use(function (err, req, res, next) {
console.log("common error handler")
console.error(err);
res.status(500).json({errorMessage:err.message});
})
app.listen(port, () => console.log(`Server is listening on port ${port}!`));