/
index.js
85 lines (74 loc) · 2.19 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
const mysql = require('mysql');
const readline = require('readline');
const { stdin: input, stdout: output } = require('process');
const http = require('http');
let connection = mysql.createConnection({
host: '127.0.0.1',
user: 'admin',
password: 'some_pass',
database: 'bookstore'
});
connection.connect(function(err) {
if (err) {
return console.error('error: ' + err.message);
}
console.log('Connected to the MySQL server.');
});
function askQuestion(query) {
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
});
return new Promise(resolve => rl.question(query, ans => {
rl.close();
resolve(ans);
}))
}
// while(true){
// const ans = await askQuestion("What query do you like to execute?(Please answer select, update, drop, delete) ");
// switch (ans.toUpperCase()) {
// case 'INSERT':
// break;
// case 'SELECT':
// const table = await askQuestion("From which table would you like to select from?");
// const column = await askQuestion("Which columns would you like to select?");
// const where = await askQuestion("Which special conditions do you have?(Please write the condition into here");
//
// break;
// case 'UPDATE':
// break;
// case 'DROP':
// break;
// case 'DELETE':
// break;
// default:
//
// }
// }
const requestListener = async function (req, res) {
const whattodo = req.url.split('/')
// first one is empty
const request = whattodo[1]
let response = '';
switch (request.toLowerCase()) {
case 'getallbooks':
await connection.query('SELECT * FROM BOOKS', function (error, results, fields) {
if (error) throw error;
if(results){
response = results
}
});
break;
default:
break;
}
res.writeHead(200);
res.end(JSON.stringify(response))
// res.end('Hello, World!');
}
const server = http.createServer(requestListener);
server.listen(8088);
connection.query('SELECT 1', function (error, results, fields) {
if (error) throw error;
// connected!
});