Toggle navigation
Toggle navigation
This project
Loading...
Sign in
홍용민
/
BusTime
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
이의준
2021-06-03 04:10:39 +0900
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
f22509f9ed764e44e958eb58b7700ffad7daf5ae
f22509f9
1 parent
f796a114
request.post모듈을 이용해 server에 데이터 전송(get 미구현)
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
134 additions
and
1 deletions
Memo.txt
OperatingTest/server.txt
View/Index.html
View/base.js
Memo.txt
0 → 100644
View file @
f22509f
앞으로 할일.
req로 보낼 데이터 형식 지정
서버에서 받아와서 어떻게 게시할지 정하기
\ No newline at end of file
OperatingTest/server.txt
View file @
f22509f
// aws 인스턴스 - chatbot /home/ubuntu/server/server.js 파일임.
// aws 인스턴스 - chatbot /home/ubuntu/server_termp/server.js 파일임.
// 작동법 : form.html 파일을 chrome에서 open -> busNumber 입력 후 submit -> http://34.206.171.225:23023/server로 리다이렉트
// server 컴퓨터인 chatbot 인스턴스에서는 {busNumber : 0000} 와 같은 데이터를 받을 수 있음.
// express routing은 아직 미구현
var http = require('http');
var fs = require('fs');
var url = require('url');
var qs = require('querystring');
var express = require('express');
var app_express = express();
var app = http.createServer(function(request,response){
...
...
@@ -26,6 +31,7 @@ var app = http.createServer(function(request,response){
var post = qs.parse(body);
// end 이벤트가 발생하면(end는 한번만 발생한다) 3번에서 저장해둔 body 를 querystring 으로 객체화
console.log(post);
console.log(body);
// 객체화된 데이터를 로그로 출력
response.writeHead(200, {'Content-Type':'text/html'});
response.end('bus Number = ' + post.busNumber);
...
...
@@ -37,5 +43,9 @@ var app = http.createServer(function(request,response){
}
});
app_express.get("/test1234", (req, res) => {
res.send('Hello world!');
})
app.listen(23023);
console.log("Listening on 23023");
\ No newline at end of file
...
...
View/Index.html
0 → 100644
View file @
f22509f
<!doctype html>
<html>
<head>
<title>
BUS TT
</title>
<meta
charset=
"utf-8"
>
<style
type=
"text/css"
>
a
{
text-decoration
:
none
}
/* 하이퍼링크 밑줄 미적용
a { color:red; text-decoration:none} : 색깔 변화없음
*/
</style>
</head>
<body>
<h1><p
style=
"text-align:center;"
>
BTT
</p></h1>
<br>
<h2>
사색의 광장 Bus Time Table 조회 서비스에 오신 것을 환영합니다.
</h2>
<p>
이곳에는 사색의 광장에서 출발하는 모든 버스의 정보가 있습니다.
</p>
<br><br>
<h2>
버스별 시간표 조회
</h2>
<script>
var
date
=
new
Date
();
var
yyyy
=
date
.
getFullYear
();
var
mm
=
date
.
getMonth
()
+
1
;
var
dd
=
date
.
getDate
();
var
hh
=
date
.
getHours
();
document
.
write
(
yyyy
+
"년 "
+
mm
+
"월 "
+
dd
+
"일 오늘 운행하는 버스들 "
);
document
.
write
(
"( "
+
hh
+
"시 "
+
mm
+
"분 기준 )"
);
</script>
<ul>
<li><a
href=
"http://localhost:23023/?busNum=5100"
>
5100
</a></li>
<li><a
href=
"http://localhost:23023/?busNum=M5107"
>
M5107
</a></li>
<li><a
href=
"http://localhost:23023/?busNum=9"
>
9
</a></li>
<li><a
href=
"http://localhost:23023/?busNum=7000"
>
7000
</a></li>
<li>
etc
</li>
</ul>
<br>
<p>
설명
</p>
</body>
</html>
View/base.js
0 → 100644
View file @
f22509f
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"
);
\ No newline at end of file
Please
register
or
login
to post a comment