-
MapleStory OpenAPI Python Library 개발 후기 - (2) API 테스트개발공부/Python 2024. 2. 8. 14:06
먼저 공개된 API를 돌려서 실제 결과가 어떻게 나오는지 살펴보고자 했다.
NEXON Open API 에서 로그인한 이후 애플리케이션을 만들고, 그 애플리케이션의 API Key를 가지고 바로 호출해볼 수 있다.
https://openapi.nexon.com/NEXON Open API
NEXON Open API는 게임에서 제공하는 오픈 API 를 등록하고 관리하여 일반 사용자들에게 전달함으로써, 사용자들이 직접 게임 관련 애플리케이션을 제작할 수 있도록 도와주는 서비스입니다.
openapi.nexon.com
(사진)
하지만, 나는 API 클라이언트 테스트는 주로 Postman을 사용하기에 Postman에 Request를 하나씩 만들기 시작했다.
(Postman의 장점은 로그인만 해놓고 한 번 만들어두면,
언제든 내 계정에 저장되어 있어 쉽게 다시 테스트해볼 수 있고, 결과를 또 해당 Request에 예시로 저장해둘 수 있다. 어떤 Header, Params, Body로 요청을 하면 어떤 결과가 오는지 전부 예시로 등록해놓아 참고하기 좋다.)
Postman에 Request를 3개 만들었을까, 아니 2개를 만들고 3개째 만들려던 찰나였던 것 같다. 몇개나 만들어야되는지 5가지 카테고리별로 전부 살펴보는데 생각보다 너무 많았다.
그래서 OpenAPI라고 하니 OpenAPI 포맷으로 공개된 파일이 없나 찾아봐야겠다는 생각에 개발자 도구를 열어 네트워크 탭을 켜고 새로고침을 눌렀다. 그리고 json이나 yml, yaml을 검색했는데 하나가 딱 걸렸다. 현재 소스의(아래 URL로 GET 요청을 보낸 네트워크의 응답결과) script 태그 안에 있었다.
https://openapi.nexon.com/game/maplestory/?id=22NEXON Open API | game
NEXON Open API에서 제공하는 게임 목록입니다.
openapi.nexon.com
(사진)
소스에 담아주신 분께 너무 감사드리며, 5가지 OpenAPI 파일들을 다운로드 받아서 Postman으로 불러왔다.
불러오고 나니 일일이 입력하지 않아 편했는데, 쭉 살펴보니 API Key를 모든 요청에 입력하게 되어있었다.
Enviroment를 하나 만들어서 API Key를 변수로 등록하고, 상위 폴더의 Authentication에서 Header에 이 키 값을 넣도록 설정했다. 폴더 내 하위 요청들은 Authentication이 상속되는게 기본값이니, 모든 요청의 Header에서 API Key를 지우면 됐다.
이것도 역시 손으로 하나하나 하기에는 너무 많기 때문에 OpenAPI 포맷으로 내보낸 이후, VSCode에서 일괄 수정하고 다시 Postman으로 불러왔다. (편안)
(사진)
문제 없이 바로 잘 동작되는 것을 확인했다.'개발공부 > Python' 카테고리의 다른 글
MapleStory OpenAPI Python Library 개발 - (1) 개발 동기 (2) 2024.02.08