Toggle navigation
Toggle navigation
This project
Loading...
Sign in
황지민
/
Corona_Dust
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
1
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
jimin
2020-06-25 02:00:32 +0900
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
880a37299a7ec3e234d1a3162ee11f2adce870fd
880a3729
1 parent
e1fed65a
edit code
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
177 additions
and
169 deletions
router/main.js
router/main.js
View file @
880a372
// api에서 데이터 불러오기
// api에서 데이터 불러오기
var
xml2js
=
require
(
'xml-js'
);
var
urlencode
=
require
(
'urlencode'
);
var
xmlToJson
;
// 변수들
var
City
;
// 도시 이름
var
Feb_Dust_2018
=
0
;
var
Mar_Dust_2018
=
0
;
var
April_Dust_2018
=
0
;
var
May_Dust_2018
=
0
;
var
June_Dust_2018
=
0
;
var
Feb_Dust_2019
=
0
;
var
Mar_Dust_2019
=
0
;
var
April_Dust_2019
=
0
;
var
May_Dust_2019
=
0
;
var
June_Dust_2019
=
0
;
var
Feb_Dust_2020
=
0
;
var
Mar_Dust_2020
=
0
;
var
April_Dust_2020
=
0
;
var
May_Dust_2020
=
0
;
var
June_Dust_2020
=
0
;
var
check
=
false
;
var
url
;
var
Dust_Place
//측정 도시
const
request
=
require
(
'request'
);
const
Dust_URL
=
"http://openAPI.seoul.go.kr:8088/"
//미세먼지 api주소_1
const
Dust_URL2
=
"/xml/MonthlyAverageAirQuality/1/5/"
//미세먼지 api주소_2
const
Dust_ServiceKey
=
"73754a53586a696d38345951716b6b"
//api의 key값
var
xml2js
=
require
(
'xml-js'
);
var
urlencode
=
require
(
'urlencode'
);
var
xmlToJson
;
//var Dust_Month=0;
var
City
;
var
Feb_Dust_2018
=
0
;
var
Mar_Dust_2018
=
0
;
var
April_Dust_2018
=
0
;
var
May_Dust_2018
=
0
;
var
June_Dust_2018
=
0
;
var
Feb_Dust_2019
=
0
;
var
Mar_Dust_2019
=
0
;
var
April_Dust_2019
=
0
;
var
May_Dust_2019
=
0
;
var
June_Dust_2019
=
0
;
var
Feb_Dust_2020
=
0
;
var
Mar_Dust_2020
=
0
;
var
April_Dust_2020
=
0
;
var
May_Dust_2020
=
0
;
var
June_Dust_2020
=
0
;
const
request
=
require
(
'request'
);
var
url
;
const
Dust_URL
=
"http://openAPI.seoul.go.kr:8088/"
//미세먼지 api주소_1
const
Dust_URL2
=
"/xml/MonthlyAverageAirQuality/1/5/"
//미세먼지 api주소_2
const
Dust_ServiceKey
=
"73754a53586a696d38345951716b6b"
//Dust url의 key값
const
Dust_Place
=
'/'
+
urlencode
(
"강남구"
)
//측정한 장소
//2020년 2월~6월 미세먼지 평균
function
DelayNode_2020
(
item
)
module
.
exports
=
function
(
app
)
{
return
new
Promise
(
function
(
resolve
,
reject
){
setTimeout
(
function
(){
//Dust_Place ='/'+ City
url
=
Dust_URL
+
Dust_ServiceKey
+
Dust_URL2
+
item
+
Dust_Place
;
//console.log(url)
request
(
url
,
function
(
error
,
res
,
body
)
{
if
(
error
){
console
.
log
(
'error=>${error}'
);
}
else
{
if
(
res
.
statusCode
==
200
)
{
var
result
=
body
;
xmlToJson
=
xml2js
.
xml2json
(
result
,
{
compact
:
true
,
spaces
:
4
});
xmlToJson2
=
JSON
.
parse
(
xmlToJson
);
if
(
item
==
202002
){
Feb_Dust_2020
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
202003
){
Mar_Dust_2020
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
202004
){
April_Dust_2020
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
202005
){
May_Dust_2020
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
202006
){
June_Dust_2020
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
app
.
get
(
'/'
,
function
(
req
,
res
){
res
.
render
(
'City_login'
)
});
app
.
get
(
'/city'
,
function
(
req
,
res
){
//2020년 2월~6월 미세먼지 평균
function
DelayNode_2020
(
item
)
{
City
=
req
.
query
.
city
;
return
new
Promise
(
function
(
resolve
,
reject
){
setTimeout
(
function
(){
Dust_Place
=
'/'
+
urlencode
(
req
.
query
.
city
)
url
=
Dust_URL
+
Dust_ServiceKey
+
Dust_URL2
+
item
+
Dust_Place
;
request
(
url
,
function
(
error
,
res
,
body
)
{
if
(
error
){
console
.
log
(
'error=>${error}'
);
}
else
{
if
(
res
.
statusCode
==
200
)
{
var
result
=
body
;
xmlToJson
=
xml2js
.
xml2json
(
result
,
{
compact
:
true
,
spaces
:
4
});
xmlToJson2
=
JSON
.
parse
(
xmlToJson
);
if
(
item
==
202002
){
Feb_Dust_2020
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
202003
){
Mar_Dust_2020
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
202004
){
April_Dust_2020
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
202005
){
May_Dust_2020
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
202006
){
June_Dust_2020
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
}
}
}
});
resolve
();
},
500
)
})
}
async
function
Dust_Month_2020
(
Dust_Month_2020
){
for
(
let
i
=
0
;
i
<
Dust_Month_2020
.
length
;
i
++
)
{
await
DelayNode_2020
(
Dust_Month_2020
[
i
]);
});
resolve
();
})
})
}
}
Dust_Month_2020
([
202002
,
202003
,
202004
,
202005
,
202006
]);
async
function
Dust_Month_2020
(
Dust_Month_2020
){
for
(
let
i
=
0
;
i
<
Dust_Month_2020
.
length
;
i
++
)
{
await
DelayNode_2020
(
Dust_Month_2020
[
i
]);
}
}
Dust_Month_2020
([
202002
,
202003
,
202004
,
202005
,
202006
]);
//2019년 2월~6월 미세먼지 평균
function
DelayNode_2019
(
item
)
{
return
new
Promise
(
function
(
resolve
,
reject
){
setTimeout
(
function
(){
//Dust_Place ='/'+ City
url
=
Dust_URL
+
Dust_ServiceKey
+
Dust_URL2
+
item
+
Dust_Place
;
request
(
url
,
function
(
error
,
res
,
body
)
{
if
(
error
){
console
.
log
(
'error=>${error}'
);
}
else
{
if
(
res
.
statusCode
==
200
)
{
var
result
=
body
;
xmlToJson
=
xml2js
.
xml2json
(
result
,
{
compact
:
true
,
spaces
:
4
});
xmlToJson2
=
JSON
.
parse
(
xmlToJson
);
if
(
item
==
201902
){
Feb_Dust_2019
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
201903
){
Mar_Dust_2019
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
201904
){
April_Dust_2019
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
201905
){
May_Dust_2019
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
201906
){
June_Dust_2019
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
//2019년 2월~6월 미세먼지 평균
function
DelayNode_2019
(
item
)
{
return
new
Promise
(
function
(
resolve
,
reject
){
setTimeout
(
function
(){
Dust_Place
=
'/'
+
urlencode
(
req
.
query
.
city
)
url
=
Dust_URL
+
Dust_ServiceKey
+
Dust_URL2
+
item
+
Dust_Place
;
console
.
log
(
url
)
request
(
url
,
function
(
error
,
res
,
body
)
{
if
(
error
){
console
.
log
(
'error=>${error}'
);
}
else
{
if
(
res
.
statusCode
==
200
)
{
var
result
=
body
;
xmlToJson
=
xml2js
.
xml2json
(
result
,
{
compact
:
true
,
spaces
:
4
});
xmlToJson2
=
JSON
.
parse
(
xmlToJson
);
if
(
item
==
201902
){
Feb_Dust_2019
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
201903
){
Mar_Dust_2019
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
201904
){
April_Dust_2019
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
201905
){
May_Dust_2019
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
201906
){
June_Dust_2019
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
}
}
}
});
resolve
();
},
500
)
})
}
async
function
Dust_Month_2019
(
Dust_Month_2019
){
for
(
let
i
=
0
;
i
<
Dust_Month_2019
.
length
;
i
++
)
{
await
DelayNode_2019
(
Dust_Month_2019
[
i
]);
});
resolve
();
})
})
}
}
Dust_Month_2019
([
201902
,
201903
,
201904
,
201905
,
201906
]);
async
function
Dust_Month_2019
(
Dust_Month_2019
){
for
(
let
i
=
0
;
i
<
Dust_Month_2019
.
length
;
i
++
)
{
await
DelayNode_2019
(
Dust_Month_2019
[
i
]);
}
}
Dust_Month_2019
([
201902
,
201903
,
201904
,
201905
,
201906
]);
//2018년 2월~6월 미세먼지 평균
function
DelayNode_2018
(
item
)
{
return
new
Promise
(
function
(
resolve
,
reject
){
setTimeout
(
function
(){
//Dust_Place ='/'+ City
url
=
Dust_URL
+
Dust_ServiceKey
+
Dust_URL2
+
item
+
Dust_Place
;
request
(
url
,
function
(
error
,
res
,
body
)
{
if
(
error
){
console
.
log
(
'error=>${error}'
);
}
else
{
if
(
res
.
statusCode
==
200
)
{
var
result
=
body
;
xmlToJson
=
xml2js
.
xml2json
(
result
,
{
compact
:
true
,
spaces
:
4
});
xmlToJson2
=
JSON
.
parse
(
xmlToJson
);
if
(
item
==
201802
){
Feb_Dust_2018
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
201803
){
Mar_Dust_2018
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
201804
){
April_Dust_2018
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
201805
){
May_Dust_2018
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
}
else
if
(
item
==
201806
){
June_Dust_2018
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
//2018년 2월~6월 미세먼지 평균
function
DelayNode_2018
(
item
)
{
return
new
Promise
(
function
(
resolve
,
reject
){
setTimeout
(
function
(){
Dust_Place
=
'/'
+
urlencode
(
req
.
query
.
city
)
url
=
Dust_URL
+
Dust_ServiceKey
+
Dust_URL2
+
item
+
Dust_Place
;
request
(
url
,
function
(
error
,
res
,
body
)
{
if
(
error
){
console
.
log
(
'error=>${error}'
);
}
else
{
if
(
res
.
statusCode
==
200
)
{
var
result
=
body
;
xmlToJson
=
xml2js
.
xml2json
(
result
,
{
compact
:
true
,
spaces
:
4
});
xmlToJson2
=
JSON
.
parse
(
xmlToJson
);
if
(
item
==
201802
){
Feb_Dust_2018
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
console
.
log
(
1
)
}
else
if
(
item
==
201803
){
Mar_Dust_2018
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
console
.
log
(
2
)
}
else
if
(
item
==
201804
){
April_Dust_2018
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
console
.
log
(
3
)
}
else
if
(
item
==
201805
){
May_Dust_2018
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
console
.
log
(
4
)
}
else
if
(
item
==
201806
){
June_Dust_2018
=
parseInt
(
xmlToJson2
[
"MonthlyAverageAirQuality"
][
"row"
][
"PM10"
][
"_text"
])
console
.
log
(
5
)
console
.
log
(
"Setting Complete!!!"
)
check
=
true
;
}
}
}
}
});
resolve
();
},
500
)
})
}
async
function
Dust_Month_2018
(
Dust_Month_2018
){
for
(
let
i
=
0
;
i
<
Dust_Month_2018
.
length
;
i
++
)
{
await
DelayNode_2018
(
Dust_Month_2018
[
i
]);
});
resolve
();
})
})
}
}
Dust_Month_2018
([
201802
,
201803
,
201804
,
201805
,
201806
]);
async
function
Dust_Month_2018
(
Dust_Month_2018
){
for
(
let
i
=
0
;
i
<
Dust_Month_2018
.
length
;
i
++
)
{
await
DelayNode_2018
(
Dust_Month_2018
[
i
]);
}
}
Dust_Month_2018
([
201802
,
201803
,
201804
,
201805
,
201806
]);
module
.
exports
=
function
(
app
)
{
app
.
get
(
'/'
,
function
(
req
,
res
){
res
.
render
(
'City_login'
)
City
=
req
.
query
.
city
;
console
.
log
(
City
)
});
app
.
get
(
'/city'
,
function
(
req
,
res
){
//값을 다 받고난뒤 index.ejs에 값 보내주기
if
(
check
==
true
){
res
.
render
(
'index'
,{
Feb_Dust_2018
,
Mar_Dust_2018
,
...
...
@@ -194,7 +200,9 @@ module.exports = function(app)
Mar_Dust_2020
,
April_Dust_2020
,
May_Dust_2020
,
June_Dust_2020
June_Dust_2020
,
City
})
});
}
\ No newline at end of file
}
});
}
...
...
Please
register
or
login
to post a comment