+ [API] Added basic API to get all spells
This commit is contained in:
@@ -1,16 +0,0 @@
|
|||||||
// MODULES
|
|
||||||
const fs = require('fs');
|
|
||||||
const mysql = require('mysql');
|
|
||||||
|
|
||||||
// Fetches and parses credentials file
|
|
||||||
let credentials_data = fs.readFileSync('./database/credentials.json');
|
|
||||||
let credentials = JSON.parse(credentials_data);
|
|
||||||
|
|
||||||
const db = mysql.createConnection({
|
|
||||||
host: credentials.host,
|
|
||||||
user: credentials.user,
|
|
||||||
password: credentials.password,
|
|
||||||
database: credentials.database,
|
|
||||||
})
|
|
||||||
|
|
||||||
module.exports = { db }
|
|
||||||
36
database/connection.js
Normal file
36
database/connection.js
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
// MODULES
|
||||||
|
const fs = require('fs');
|
||||||
|
const mysql = require('mysql');
|
||||||
|
|
||||||
|
// Fetches and parses credentials file
|
||||||
|
let credentials_data = fs.readFileSync('./database/credentials.json');
|
||||||
|
let credentials = JSON.parse(credentials_data);
|
||||||
|
|
||||||
|
const db = mysql.createConnection({
|
||||||
|
host: credentials.host,
|
||||||
|
user: credentials.user,
|
||||||
|
password: credentials.password,
|
||||||
|
database: credentials.database,
|
||||||
|
})
|
||||||
|
|
||||||
|
const getSpells = () => {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
let query =
|
||||||
|
"SELECT * " +
|
||||||
|
"FROM spell";
|
||||||
|
|
||||||
|
db.query(query, (err, result, fields) => {
|
||||||
|
if (err) {
|
||||||
|
return reject;
|
||||||
|
}
|
||||||
|
resolve(result);
|
||||||
|
})
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const closeConnection = (err) => {
|
||||||
|
db.end();
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = { db, getSpells, closeConnection }
|
||||||
42
index.js
42
index.js
@@ -1,26 +1,32 @@
|
|||||||
// MODULES
|
// MODULES
|
||||||
const express = require('express');
|
const express = require('express');
|
||||||
let connection = require('./connection');
|
const connection = require('./database/connection');
|
||||||
const db = connection.db;
|
const getSpells = connection.getSpells;
|
||||||
|
const closeConnection = connection.closeConnection;
|
||||||
|
|
||||||
// CONSTANTS
|
// CONSTANTS
|
||||||
const port = 2814;
|
const port = 2814;
|
||||||
|
|
||||||
|
// APP
|
||||||
const query = "SELECT * FROM spell";
|
|
||||||
|
|
||||||
// make to connection to the database.
|
|
||||||
db.connect( err => {
|
|
||||||
if (err) { throw err }
|
|
||||||
console.log("Connected");
|
|
||||||
db.query(query, (err, result, fields) => {
|
|
||||||
console.log(result[0]);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
app = express();
|
app = express();
|
||||||
|
const server = app.listen(port, () => {console.log(`App listening on port ${port}`)});
|
||||||
|
|
||||||
app.listen(port, () => {
|
// getSpells().then((v) => {
|
||||||
console.log(`App listening on port ${port}`)
|
// console.log(v);
|
||||||
});
|
// }).catch(r => {
|
||||||
|
// console.log(r);
|
||||||
|
// })
|
||||||
|
|
||||||
|
app.route('/spells')
|
||||||
|
.get((req, res, next) => {
|
||||||
|
getSpells().then(v => {
|
||||||
|
res.setHeader('Content-Type', 'application/json');
|
||||||
|
res.end(JSON.stringify({spells : v}));
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
// On process exit
|
||||||
|
process.on('SIGINT', () => {
|
||||||
|
closeConnection();
|
||||||
|
server.close();
|
||||||
|
})
|
||||||
Reference in New Issue
Block a user