Toggle navigation
Toggle navigation
This project
Loading...
Sign in
term-project
/
project
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
Solhee
2020-12-05 02:13:56 +0900
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
09045bf06e3f18d5ac79e455ec1af78166da5ae7
09045bf0
1 parent
8ff61b2e
InvalidInputProcessingForFoodAdtvAPI
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
27 additions
and
18 deletions
express/foodapi.js
express/foodapi.js
View file @
09045bf
var
express
=
require
(
'express'
);
var
request
=
require
(
'request'
);
//xml을 json으로 바꾼다.
const
convert
=
require
(
'xml-js'
);
var
ProductCategoryName
=
'스위트초콜릿'
;
var
url
=
'http://apis.data.go.kr/1470000/FoodAdtvInfoService/getFoodAdtvInfoList'
;
var
key
=
'ofY2ppOq5kBqT5jYPaGsW%2BEy7OR5a1bf5Z9PHvqNKvwO5DSCaU2x2qCj%2FoXnuB1YVbMTlErkHWSMEsR5b7isrw%3D%3D'
;
var
queryParams
=
'?'
+
encodeURIComponent
(
'ServiceKey'
)
+
'='
+
key
;
//queryParams += '&' + encodeURIComponent('prdlst_cd') + '=' + encodeURIComponent('C0118010300000');
queryParams
+=
'&'
+
encodeURIComponent
(
'pc_kor_nm'
)
;
// + '=' + encodeURIComponent('스위트초콜릿'
);
queryParams
+=
'&'
+
encodeURIComponent
(
'pageNo'
)
+
'='
+
encodeURIComponent
(
'213'
);
queryParams
+=
'&'
+
encodeURIComponent
(
'numOfRows'
)
+
'='
+
encodeURIComponent
(
'100'
);
queryParams
+=
'&'
+
encodeURIComponent
(
'pc_kor_nm'
)
+
'='
+
encodeURIComponent
(
ProductCategoryName
);
//
queryParams += '&' + encodeURIComponent('pageNo') + '=' + encodeURIComponent('213');
//
queryParams += '&' + encodeURIComponent('numOfRows') + '=' + encodeURIComponent('100');
global
.
foods
=
new
Array
();
request
({
...
...
@@ -26,25 +26,34 @@ request({
if
(
response
.
statusCode
==
200
){
var
result
=
body
;
var
xmltojson
=
convert
.
xml2json
(
result
,{
compact
:
true
,
spaces
:
4
});
//console.log(xmltojson);
var
resObj
=
eval
(
"("
+
xmltojson
+
")"
);
var
resultItems
=
resObj
.
response
.
body
.
items
;
//console.log(xmltojson);
var
resultLeng
=
Object
.
keys
(
resultItems
);
if
(
Object
.
keys
(
resultItems
).
length
!=
0
){
console
.
log
(
"valid input : 식품 첨가물 정보를 받아옵니다."
);
var
responseMessage
=
'[ '
+
resultItems
.
item
[
0
].
PC_KOR_NM
.
_text
+
' ]\n'
;
//하나의 카테고리에 대한 정보만 받는다고 가정해 반복문 밖으로 뺐습니다.
for
(
var
i
=
0
;
i
<
resultItems
.
item
.
length
;
i
++
){
var
responseMessage
=
'[ '
+
resultItems
.
item
[
i
].
PC_KOR_NM
.
_text
+
' ]\n'
;
var
addictive
=
resultItems
.
item
[
i
].
T_KOR_NM
.
_text
;
var
specVal
=
resultItems
.
item
[
i
].
SPEC_VAL_SUMUP
.
_text
;
var
yn
=
resultItems
.
item
[
i
].
INJRY_YN
.
_text
;
responseMessage
+=
addictive
+
' : '
+
specVal
+
'['
+
yn
+
']'
+
'\n'
;
console
.
log
(
'[responese message]'
,
responseMessage
);
for
(
var
i
=
0
;
i
<
resultItems
.
item
.
length
;
i
++
)
{
//var responseMessage ='[ ' + resultItems.item[i].PC_KOR_NM._text + ' ]\n';
var
addictive
=
resultItems
.
item
[
i
].
T_KOR_NM
.
_text
;
var
specVal
=
resultItems
.
item
[
i
].
SPEC_VAL_SUMUP
.
_text
;
var
yn
=
resultItems
.
item
[
i
].
INJRY_YN
.
_text
;
responseMessage
+=
addictive
+
' : '
+
specVal
+
'['
+
yn
+
']'
+
'\n'
;
}
}
else
{
console
.
log
(
"Invalid Input : 에러 메시지 전송"
);
var
responseMessage
=
"잘못 된 입력입니다. 라벨의 식품유형을 확인하고 다시 입력해주세요."
;
}
console
.
log
(
'[responese message]'
,
responseMessage
);
}
}
//console.log('Status', response.statusCode);
//console.log('Headers', JSON.stringify(response.headers));
//console.log('Reponse received', body);
});
...
...
Please
register
or
login
to post a comment