NEIS OpenAPI 를 이용해서 전국 초,중,고,특수학교의 시간표/급식/학사일정을 가져와서 보여주는 작업을 했다.
OpenAPI 를 사용하면서 가장 어려웠던 점은 크게 2가지.
•
NEIS OpenAPI 서버 상태가 건강하지 못하다.
코로나19 초창기 자가진단을 위해 학생, 학부모, 교사가 NEIS 에 동시에 접근하면서 NEIS 의 OpenAPI 가 먹통이 되는 현상이 빈번하게 발생함. 수업지구대 앱에서는 Timeout 또는 500Error 을 떄려 맞으면서 앱이 정상적으로 동작하지 않음.
•
NEIS 의 아름다운 json format
NEIS의 OpenAPI response 는 XML 이 기본이나 query string 을 통해 response type을 JSON 으로 요청할 수도 있다. JSON 으로 내려오는 형태가 json 스럽지 않은 것이 함정. XML 을 컨터버를 통해 변환한 느낌.Best practice 가 아닌 그냥 단순히 되는 방법으로 파싱해서 사용중인데 양심에 찔림.
또한 2021년 유저 로그인 기반의 서비스를 제공할 예정이라 OpenAPI 를 Firebase Cloud function 을 이용해 wrapping 할 예정
OpenAPI 를 내가 Control 가능한 서버로 가져옴에 따라, NEIS 서버 이상 시 커스텀 에러코드를 통해 점검 등 사용자 친화적인 대응이 가능해졌다.