웹 프론트엔드

OpenAPI의 이해

윤승 2025. 2. 3. 16:23

OpenAPI란?


OpenAPI는 "Open Application Programming Interface"의 약자로, 애플리케이션과 서비스 간의 상호 작용을 위한 인터페이스를 개방하고 공개적으로 제공하는 프로그래밍 인터페이스입니다.
OpenAPI는 웹 기술을 사용하여 서로 다른 애플리케이션 간의 데이터 및 기능을 공유하고 통합하는 데 사용됩니다.

 

OpenAPI 활용사례

 

  • 소셜 미디어 통합: 여러 소셜 미디어 플랫폼의 API를 OpenAPI로 제공하여 개발자들이 소셜 미디어 기능을 애플리케이션에 통합할 수 있게 합니다. 예를 들어, 페이스북, 트위터, 인스타그램 등의 API를 OpenAPI로 제공합니다.
  • 지도 서비스: 지도 관련 서비스에서 위치 정보, 경로 탐색, 장소 검색 등을 OpenAPI를 통해 제공합니다. 이를 통해 외부 애플리케이션에서 지도 서비스의 기능을 활용할 수 있습니다.
  • 금융 기술 서비스: 금융 기관은 OpenAPI를 사용하여 제휴사나 파트너에게 금융 상품 및 서비스에 접근할 수 있는 인터페이스를 제공합니다. 이는 더 많은 사용자들이 해당 금융 서비스를 활용할 수 있게 돕습니다.
  • 클라우드 서비스: 클라우드 제공 업체는 OpenAPI를 사용하여 개발자들이 클라우드 리소스를 프로그래밍 방식으로 관리하고 사용할 수 있도록 합니다.
  • IoT 기기 연동: IoT 기기들은 OpenAPI를 통해 상호 작용하고 데이터를 교환합니다. 이를 통해 다양한 IoT 기기들이 통합되어 더 나은 기능을 제공할 수 있습니다.

- OpenAPI는 다양한 서비스와 통합하여 애플리케이션의 기능을 확장하고, 더욱 다양하고 유용한 서비스를 제공하는 데 사용될 수 있습니다.


OpenAPI는 YAML 또는 JSON 형식으로 작성된다.

 

공개 API 동작원리

공개 API 사이트에서 제공하는 API는 서버에 있기 때문에 서버에 접근해서 API를 사용하려면 API 사용을 신청한 후에 인증키를 받아서 사용한다.

개발자마다 개별 인증키를 받는데, 해당 인증키를 통해 정상적인 경로로 API에 접근한 후 그 API의 함수나 속성을 사용할 수 있다.

 

 

쉽게 말해 마켓에 비유하면 API는 점원이라고 생각하면된다.
요리사와 손님이 있고, 가운데 점원이 양 쪽 요청을 전달하거나 확인한다.

 


오픈 API 신청해보기

정부가 운영하는 공공데이터포털사이에서 오픈API를 가지고 실습을 했다.

오픈API 신청순서를 간단하게 정리해봤다.

    1. 공공데이터포털 사이트에서 필요한 정보를 검색한다.
    2. 검색 결과 중에서 [오픈 API] 탭을 클릭하면 오픈 API만 골라서 볼 수 있다.
    3. 찾은 API 페이지에서 상세 정보를 살펴본 후 사용하겠다면 [활용 신청]을 클릭한다.
    4. 신청한 API마다 인증키가 발급되는데, ‘일반 인증키'에 있는 키를 사용하면 된다. 
    5.  API 사용법을 자세히 정리해 놓은 ‘참고문서'를 꼭 살펴본다. 
    6. 그리곤 활용신청을 누르면 된다.

 

 

 

 

 

 

 


OpenAPI 활용 방법 정리

  1. API 문서 확인
    • Swagger 또는 OpenAPI Specification(OAS) 문서 확인
    • 엔드포인트 URL, 요청/응답 형식, 파라미터, 인증 방법 등 확인
  2. API 키 발급
    • 필요한 경우 개발자 포털에서 API 키 발급
    • API 키는 외부에 노출되지 않도록 관리
  3. HTTP 요청 전송
    • GET, POST, PUT, DELETE 등의 메서드 사용
    • 요청 파라미터 설정 및 헤더에 API 키 포함
  4. 데이터 처리 및 응답 분석
    • JSON 또는 XML 형식 응답 처리
    • 필요한 정보 추출 및 화면 표시 또는 기능에 활용
  5. 에러 핸들링
    • 에러 메시지 제공 및 적절한 조치 구현
  6. 성능 최적화
    • 호출 횟수 최소화, 캐싱 및 비동기 호출 사용
    • API 사용 제한 고려
  7. 보안 고려
    • 인증, 인가, 데이터 암호화 적용
    • HTTPS 사용 및 API 키 보안 유지

'웹 프론트엔드' 카테고리의 다른 글

JavaScript 1 - 변수  (1) 2025.02.06
부트스트랩의 이해  (1) 2025.02.02
CSS의 기본  (1) 2025.01.29
HTML의 이해  (0) 2025.01.25