You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
2.1 KiB
83 lines
2.1 KiB
var express = require('express');
|
|
var app = express();
|
|
var bodyParser = require('body-parser');
|
|
var mysql = require('mysql');
|
|
|
|
app.use(bodyParser.json());
|
|
app.use(bodyParser.urlencoded({
|
|
extended: true
|
|
}));
|
|
|
|
// connection configurations
|
|
var dbConn = mysql.createConnection({
|
|
host: 'localhost',
|
|
port: 3306,
|
|
user: 'nodeapiuser',
|
|
password: 'RDSGF435FG',
|
|
database: 'nodeapi'
|
|
});
|
|
|
|
// connect to database
|
|
dbConn.connect();
|
|
|
|
|
|
// Retrieve all users
|
|
app.get('/users', function (req, res) {
|
|
dbConn.query('SELECT * FROM users', function (error, results, fields) {
|
|
if (error) throw error;
|
|
return res.send({ error: false, data: results });
|
|
});
|
|
});
|
|
|
|
|
|
// Retrieve user with id
|
|
app.get('/user/:id', function (req, res) {
|
|
|
|
let user_id = req.params.id;
|
|
|
|
if (!user_id) {
|
|
return res.status(400).send({ error: true, message: 'Please provide user_id' });
|
|
}
|
|
|
|
dbConn.query('SELECT * FROM users where id=?', user_id, function (error, results) {
|
|
if (error) throw error;
|
|
return res.send({ error: false, data: results[0] });
|
|
});
|
|
|
|
});
|
|
|
|
// Add a new user
|
|
app.post('/user', function (req, res) {
|
|
|
|
let nom = req.body.nom;
|
|
let prenom = req.body.prenom;
|
|
let email = req.body.email;
|
|
console.log(nom, prenom, email);
|
|
|
|
dbConn.query("INSERT INTO users (nom, prenom, email) VALUES (?,?,?);", [nom, prenom, email], function (error, results) {
|
|
if (error) throw error;
|
|
return res.send({ error: false, data: results, message: 'New user has been created successfully.' });
|
|
});
|
|
});
|
|
|
|
|
|
|
|
// Delete user
|
|
app.delete('/user/:id', function (req, res) {
|
|
let user_id = req.params.id;
|
|
|
|
if (!user_id) {
|
|
return res.status(400).send({ error: true, message: 'Please provide user_id' });
|
|
}
|
|
dbConn.query('DELETE FROM users WHERE id = ?', [user_id], function (error, results, fields) {
|
|
if (error) throw error;
|
|
return res.send({ error: false, data: results, message: 'User has been deleted successfully.' });
|
|
});
|
|
});
|
|
|
|
// set port
|
|
app.listen(8080, function () {
|
|
console.log('Node app is running on port 8080');
|
|
});
|
|
|
|
module.exports = app; |