-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.js
130 lines (103 loc) · 2.89 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
const express = require("express");
const app = express();
const db = require("./config/database"); // const mysql = require('mysql')
const nodemailer = require("nodemailer");
const cors = require("cors");
app.use(cors());
app.use(express.json());
//To take from .env files - Only for Non-Prod
// if (process.env.NODE_ENV !== 'production') {
// require('dotenv').config();
// }
// const db = mysql.createConnection({
// host: process.env.MYSQL_HOST,
// user: process.env.MYSQL_USER,
// password: process.env.MYSQL_PASSWORD,
// database: process.env.MYSQL_DATABASE
// })
//Test End point
app.get("/hello", (req, res) => {
res.send("Hello");
});
//get all employees
app.get("/get", (req, res) => {
console.log("GET request");
db.query("SELECT * FROM employees", [], (err, result) => {
if (err) {
console.log("Error : ", err);
res.send(err);
} else {
console.log("Query result : ", result);
res.send(result);
}
});
});
//Save employee
app.post("/create", (req, res) => {
console.log("POST Request");
const name = req.body.name;
const age = req.body.age;
const address = req.body.address;
const experience = req.body.experience;
db.query(
"INSERT INTO employees (name, age, address, experience) VALUES (?,?,?,?)",
[name, age, address, experience],
(err, result) => {
if (err) {
console.log("Error : ", err);
res.send(err);
} else {
console.log("Successfully Inserted!", result.insertId);
res.status(200).json({ message: result.insertId });
}
}
);
});
//Delete employee with id
app.delete("/delete/:id", (req, res) => {
console.log("POST Request");
const id = req.params.id;
db.query("DELETE FROM employees WHERE id = ?", [id], (err, result) => {
if (err) {
console.log("Error : ", err);
res.send(err);
} else {
console.log("Successfully Deleted!");
res.send("Successfully Deleted!");
}
});
});
//Send mail - Turn ON for gmail - https://myaccount.google.com/lesssecureapps
app.get("/sendmail", (req, res) => {
console.log("SendMail GET Request");
//Account details
const transporter = nodemailer.createTransport({
service: "gmail",
auth: {
user: "",
pass: "",
},
});
//Inputs
const mailOptions = {
from: "", // sender address
to: "", // list of receivers
subject: "Node Js e-mail test", // Subject line
html: "<p>Test!</p>", // plain text body
};
//Sending Mail
transporter.sendMail(mailOptions, function (err, info) {
if(err){
console.log(err)
res.send(err)
}
else{
console.log("Mail Sent : ", info);
res.send(info)
}
});
});
//App Listening on PORT
app.listen(process.env.PORT || 3001, () => {
console.log(`SERVER STARTED ON PORT ${process.env.PORT}`);
});