server.js 1.19 KB
const express = require('express')
const path = require("path")
const mongodb = require('mongodb');
const MongoClient = mongodb.MongoClient;

var app = express()

const PORT = 1697;
const url = 'mongodb://mongo:27017';
var db;
app.use(express.urlencoded({ extended: true }));

app.use("/public", express.static('./public'));

app.get("/*", (req, res) => {
	res.sendFile(path.join(__dirname, "./public/index.html"))
})

app.get('/festivalList', (req, res) => { // localhost:3000/festivalList 입력하면 list.ejs에 저장한 형식대로 정보 불러와짐
		//디비에 저장된 festivals 라는 collection안의 데이터(제목 또는 내용 등)를 꺼내기
		db.collection('festivals').find().toArray((err, rslt) => {  //DB에서 데이터를 찾음 festivals라는 collection안의 데이터를 꺼내게 됨
			if (err) throw err;
			console.log(rslt);
			res.render('list.ejs', { posts: rslt }); // 찾은 데이터를 ejs 파일에 넣음
	});
});

MongoClient.connect(url, (error, client) => { // 서버열때 url 사용 mongoDB와 연결시키기
	if (error) return console.log(error);
		db = client.db('myFirstDatabase');
		app.listen(PORT, () => {
		console.log(`Server lauched on port ${PORT}`);
	});
});