티스토리 뷰
지난 3월 미세도라는 지역별 측정소 미세먼지 정보를 실시간으로 수집하여 지도에 마킹하는 프로젝트를 오픈하였다. 오픈 후, 사용 중이던 API 서비스가 중단되니 신규 서비스로 변경하라는 안내 메일을 받았다.
예상으로는 기존 서비스의 경우 지원 포맷이 XML만 존재하였는데, 신규 서비스의 경우 JSON 포맷까지 지원하는 걸로 보아, 데이터 관리 및 운영의 편의를 위해 업데이트를 한 듯싶다.
중요한 건, 해당 시점에 API를 교체하지 못하고, 할 일 목록에만 담아 놓고 방치하다가, 이번 달에 교체를 진행하기로 마음먹었다😅
SERVICE_KEY_IS_NOT_REGISTERED_ERROR
한국 환경공단_에어코리아에서 제공해준 API 문서를 기준으로 작업을 진행했다.
요청/응답 레이아웃 기준으로 세팅 후, 요청 전문을 송신하였지만, 다음과 같은 결과를 반환받았다.
"cmmMsgHeader" => array:3 [
"errMsg" => "SERVICE ERROR"
"returnAuthMsg" => "SERVICE_KEY_IS_NOT_REGISTERED_ERROR"
"returnReasonCode" => "30"
]
API 문서를 확인해본 해당 에러 SERVICE_KEY_IS_NOT_REGISTERED_ERROR 는 '잘못된 서비스 키를 사용하였거나, 서비스 키를 URL인코딩하지 않음'이라고 설명되어 있다.
해결방안
방안 1. 마이페이지에서 오픈 API 인증키 발급현황을 확인하여, 요청 시 서비스 키 값의 오타 및 오류가 없는지 확인해준다.
인증키를 확인했음에도 문제가 없다면, [인증키 재발급] 후, 30분 ~ 1시간 정도 있다가 재요청을 수행해보자.
방안 2. 나의 문의 > 고객센터에 질의하기
방안 3. 한글 데이터 url encode
나의 경우 방안 1 / 방안 2로 모두 해결되지 않았다😢
문제를 찾기 위해, 전송 데이터 값을 재검증하면서 해결하였다.
원은 신규 API 서비스로 전환하면서 한글 데이터에 urlencode 처리하게 개선된 것이다. 아무래도 API 서버 내 인코딩 환경의 이슈로 한글 처리가 개선된 것으로 보인다.
정상적으로 요청에 대한 응답값을 반환 받아 온다 👍
'프로그래밍 > ETC' 카테고리의 다른 글
CSV 파일형식 알아보기 (0) | 2021.08.18 |
---|---|
맥북 크롬 및 사파리 스크롤바 표시 방법 (0) | 2021.08.16 |
[SSL] 무료 SSL인증서 - Let`s Encrypt DNS 방식 발급 과정 (0) | 2021.03.23 |
[VSCODE] 원격지서버 설정 (0) | 2021.03.20 |
[Encode] 문자열-아스키코드/유니코드 (0) | 2017.04.30 |