연동해야 할 API의 개발자 포털에 들어갔더니 로그인 폼뿐이었다. 회원가입은 막혀 있고, 계정이 언제 나올지도 모르는데 연동 일정은 이미 잡혀 있다.
스펙 없이는 요청·응답 타입 설계도 시작할 수 없다. 그런데 이 포털이 WSO2 API Manager 기반이라는 게 실마리였다 — 구조를 알면 로그인 없이 열리는 문이 보인다.
포털 타이틀의 WSO2 APIM이 결정적인 힌트였다. Kuehne+Nagel의 이 포털은
처음부터 만든 자체 웹앱이 아니라, WSO2 API Manager라는 오픈소스 API 관리
플랫폼의 개발자 포털(Devportal) 컴포넌트를 그대로 띄운 것이었다.
WSO2 Devportal은 화면(프론트엔드 SPA)과 데이터(백엔드 REST API)가 분리돼
있다. 그리고 이 데이터 쪽 REST API는 공개(PUBLISHED) API의 목록·문서를
익명으로 조회할 수 있게 열려 있는 경우가 많다. 카탈로그를 검색엔진이나
비로그인 방문자에게도 보여주려는 기본 설계 때문이다.
즉, 브라우저 화면은 로그인을 요구해도 화면이 데이터를 가져가는 뒷문은 열려
있을 수 있다는 것. 위 대표 이미지가 그 구조다.
이 글은 발췌본입니다. 실패한 시도와 검증 과정까지 포함한 전문은 원문에 있습니다.