관리 메뉴

플랫폼공작소 IT Blog

[원스톱 Node.js] REST API + Mysql 연동 예제 본문

Framework/Node.js

[원스톱 Node.js] REST API + Mysql 연동 예제

솜픽(Sompic) 플랫폼공작소 2020. 5. 12. 10:11

안녕하세요.

[원스톱 Node.js] REST API + Mysql 연동 예제를 공유합니다.




1. 예제 실행을 위한 데이터베이스 + 테이블 생성

CREATE DATABASE my_db;


USE my_db;

CREATE TABLE Persons
(
id int,
name varchar(255),
age int
);

INSERT INTO Persons (id, name, age)
VALUES (1, 'John Doe', 20);

SELECT * FROM Persons;


2. 소스코드 공개 (파일명 : index.js)

var express = require('express');
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : '05471595aB!',
port : 3306,
database : 'my_db'
});

//DB Connection TEST
connection.connect();
connection.query('SELECT * from Persons', function(err, rows, fields) {
if (!err)
console.log('The solution is: ', rows);
else
console.log('Error while performing Query.', err);
});

// configuration ===============================================================
var app = express();
app.set('port', process.env.PORT || 1337);
app.get('/', function(req, res){
res.send('Hello World! Bro!');
});

// REST API (GET) ==============================================================
const courses = [
{ id: 1, name: "courses1" },
{ id: 2, name: "courses2" },
{ id: 3, name: "courses3" }
];
app.get("/api/courses", (req, res) => {
res.send(courses);
});

// REST API (GET, MYSQL Connection) ========================================================
app.get('/api/persons', function(req, res){
connection.query('SELECT * FROM persons', function(err, rows) {
if(err) throw err;

console.log('The solution is: ', rows);
res.send(rows);
});
});

// REST API (POST) ==============================================================
app.get("/api/posts/:year/:month", (req, res) => {
res.send(req.params);
});

// SERVER PORT ================
app.listen(app.get('port'), function () {
console.log('Express server listening on port ' + app.get('port'));
});


3. 서버실행


4. 결과

문의사항이 있으면 질문남겨주세요. 감사합니다.

reference : https://cheese10yun.github.io/mysql-node/

reference : https://velog.io/@smooth97/Node.js-Restful-API-wok2wqo7yu

0 Comments
댓글쓰기 폼