이의준

router & server file 브랜치 이동 (View -> control)

1 -var url = require('url');
2 -var request = require('request');
3 -var qs = require('querystring');
4 -const { METHODS } = require('http');
5 -
6 -module.exports = function(app)
7 -{
8 - app.get('/', function (req, res) {
9 - res.render('Index.html');
10 - });
11 -
12 - app.get('/timetable', function (req, res){ // bus list의 특정 버스를 클릭하면, server에 요청
13 - var _url = req.url;
14 - var queryData = url.parse(_url, true).query;
15 - var busNum = queryData.busNum;
16 - const options = {
17 - url: 'http://IPv4:port/__dirname',
18 - method: 'GET',
19 - headers: {
20 -
21 - }
22 - };
23 -
24 - request.post(
25 - {
26 - url: 'http://34.206.171.225:23023/reqBusInfo',
27 - body: {
28 - 'busNum': busNum,
29 - 'testVariable': 'test'
30 - },
31 - json: true
32 - }
33 - );
34 -
35 - var resFromServer = JSON.parse(res);
36 - var templateTimeTable =
37 - `
38 - <!doctype html>
39 - <html>
40 - <head>
41 - <title>Time Table</title>
42 - <meta charset="utf-8">
43 - <style type="text/css">
44 - a { text-decoration:none }
45 - </style>
46 - </head>
47 -
48 - <body>
49 - <h1><a href="/"><p style="text-align:center;">BTT</p></a></h1>
50 - <br>
51 - <h2>${busNum} BUS Time Table</h2>
52 - <br>
53 - ${resFromServer}
54 - </body>
55 - </html>
56 - `;
57 - res.send(templateTimeTable);
58 -
59 - });
60 -}
1 -var express = require('express');
2 -var app = express();
3 -var router = require('./router/main')(app); // router모듈인 main.js를 불러와서 app에 전달
4 -
5 -//__dirname : 현재 실행중인 폴더 경로
6 -app.set('views', __dirname + '/views'); //서버가 읽을 수 있도록 HTML 의 위치를 정의
7 -app.set('view engine', 'ejs'); //서버가 HTML 렌더링을 할 때, EJS 엔진을 사용하도록 설정
8 -app.engine('html', require('ejs').renderFile); //서버가 HTML 렌더링을 할 때, EJS 엔진을 사용하도록 설정
9 -
10 -var server = app.listen(23023, function () {
11 - var host = server.address().address
12 - var port = server.address().port
13 - console.log("app listening at http://%s:%s", host, port)
14 -})
15 -
16 -app.use(express.static(__dirname + '/public'));