더북(TheBook)

  9 계속해서 응답콘텐츠에서 필요한 값을 찾기 쉽게 만들기 위해 블록에 응답콘텐츠의 형태를 바꾸는 코드를 추가합니다.

 

Json텍스트디코딩하기 함수는 json 형식의 데이터를 특정 값을 찾기 쉬운 리스트 형태로 바꿔줍니다. 응답콘텐츠를 리스트로 바꿔서 다시 응답콘텐츠에 저장하는 방식으로 응답콘텐츠의 형태를 바꿉니다.

형태가 바뀐 응답콘텐츠를 급식메뉴 레이블에 출력하면 다음과 같이 보일 것입니다.

[["mealServiceDietInfo", [[["head", [[["list_total_count", 1]], [["RESULT", [["CODE", "INFO-000"], ["MESSAGE", "정상 처리되었습니다."]]]]]]], [["row", [[["ATPT_OFCDC_SC_CODE", "R10"], ["ATPT_OFCDC_SC_NM", "경상북도교육청"], ["CAL_INFO", "513.0 Kcal"],["DDISH_NM", "흑미수수밥<br/>김실파무침(자율)5.6.18.<br/>당면피망잡채1.5.8.10.13.<br/>누룽지튀김(자율)5.12.13.<br/>깍두기(자율)9.13.<br/>등뼈감자탕5.6.9.10."],…생략…, ["ORPLC_INFO", "쌀 : 국내산<br/>김치류 : 국내산<br/>고춧가루(김치류) : 국내산<br/>돼지고기 : 국내산<br/>오징어 : 국내산<br/>콩 : 국내산"], ["SCHUL_NM", "OO초등학교"], ["SD_SCHUL_CODE", "8941057"]]]]]]]]

 

대괄호가 여러 겹 겹쳐 있어서 복잡해 보이기는 하지만 자세히 관찰해 보면 하나의 괄호 쌍 안에 두 개의 항목이 들어 있는 리스트들이 눈에 들어올 것입니다. 리스트 안에 있는 두 개의 항목은 서로 짝을 이루고 있는데 첫 번째 항목은 데이터의 이름, 두 번째 항목은 데이터 값입니다. 예를 들어, DDISH_NM은 데이터의 이름이고 흑미수수밥<br/>김실파무침(자율)5.6.18.<br/>당면피망잡채1.5.8.10.13.<br/>누룽지튀김(자율)5.12.13. <br/>깍두기(자율)9.13.<br/>등뼈감자탕5.6.9.10.은 데이터 값입니다. 그런데 이 데이터를 잘 살펴보면 우리가 찾고 있는 급식 메뉴라는 것을 알 수 있습니다. 따라서 지금부터는 응답콘텐츠에서 필요 없는 데이터를 제외하고 DDISH_NM 값만 가져오는 작업을 해 보겠습니다.

 

TIP

급식 메뉴의 요리명 뒤에 온점(.)으로 구분된 1~18 사이의 번호는 알레르기를 유발할 수 있는 식재료를 나타내는 번호로, 나이스 교육정보 개방 포털의 급식식단정보에서 각 번호의 식재료명을 확인할 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.