base.js
1.92 KB
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
var http = require('http');
var fs = require('fs');
var url = require('url');
var request = require('request');
function templateTimeTable(busNum, req){
return `
<!doctype html>
<html>
<head>
<title>Time Table</title>
<meta charset="utf-8">
<style type="text/css">
a { text-decoration:none }
</style>
</head>
<body>
<h1><a href="Index.html"><p style="text-align:center;">BTT</p></a></h1>
<br>
<h2>${busNum} BUS Time Table</h2>
<br>
${req}
</body>
</html>
`;
}
function req_post(busNum){
request.post(
{
url: 'http://34.206.171.225:23023/server',
body: {
'busNum': busNum,
'testVariable': 'test'
},
json: true
}
);
}
function req_get(){
request.get(
{
url: 'http://34.206.171.225:23023/test2134',
}
);
}
var app = http.createServer(function(request,response){
var _url = request.url;
var queryData = url.parse(_url, true).query;
var busNum = queryData.busNum; // function의 parameter로 queryData.busNum은 안되서 새로 변수를 만듦
if(_url == '/'){
_url = '/Index.html';
}
if(_url == '/favicon.ico'){
return response.writeHead(404);
}
response.writeHead(200);
console.log(queryData.busNum);
if (busNum != null){ // 버스번호를 요청했을때 타임테이블 페이지로 전환
req_post(busNum);
var resFromServer = req_get();
console.log(req_get());
//var resFromServer = '<p> Response from API server ... </p>';
var timetableHTML = templateTimeTable(busNum, resFromServer);
response.end(timetableHTML);
}
else{ // 아니라면, url 따라감
response.end(fs.readFileSync(__dirname + _url));
}
});
app.listen(23023);
console.log("Listening on 23023");