안녕하세요. Codinglee입니다.
왕초보도 이해할 수 있는 웹 프로그래밍 시간입니다.
지난 포스트에서는 초보자들이 자주 하는 실수에 대해 알아보았습니다.
이번 포스트에서는 API 에 대해 알아보겠습니다.
웹을 사용하면서 우리는 API를 거의 매일 사용하고 있습니다.
구글 로그인과 같은 소셜 로그인 사용하시나요?
내 위치의 미세먼지, 날씨 확인하시나요?
이것들이 모두 API를 사용한 기능입니다.
그럼 API 에 대한 내용 시작합니다.

시리즈 1. 챗지피티 활용 프로그래밍 1 – 계산기 만들기 (준비)
시리즈 2. 챗지피티 활용 프로그래밍 2 – 계산기 만들기
시리즈 3. 챗지피티 활용 프로그래밍 3 – 계산기 만들기
시리즈 4. 챗지피티 활용 프로그래밍 4 – 계산기 만들기(완료)
시리즈 5. 왕초보 웹 프로그래밍 1 – HTML CSS JAVASCRIPT
시리즈 6. 왕초보 웹 프로그래밍 2 – 인터넷, 웹브라우저
시리즈 7. 왕초보 웹 프로그래밍 3 – DNS(Domain Name System)
시리즈 8. 왕초보 웹 프로그래밍 4 – 서버, 클라이언트
시리즈 9. 왕초보 웹 프로그래밍 5 – 개발자 도구 살펴보기
시리즈 10. 왕초보 웹 프로그래밍 6 – HTML 태그
시리즈 11. 왕초보 웹 프로그래밍 7 – HTML 사용법, CSS
시리즈 12. 왕초보 웹 프로그래밍 8 – CSS 사용법
시리즈 13. 왕초보 웹 프로그래밍 9 – CSS 기초 사용법 2
시리즈 14. 왕초보 웹 프로그래밍 10 – 간단한 웹 페이지 만들기
시리즈 15. 왕초보 웹 프로그래밍 11 – 자바스크립트(javascript)
시리즈 16. 왕초보 웹 프로그래밍 12 – 자바스크립트 기본 문법
시리즈 17. 왕초보 웹 프로그래밍 13 – javascript + html
시리즈 18. 왕초보 웹 프로그래밍 14 – 자바스크립트를 배우는 이유
시리즈 19. 왕초보 웹 프로그래밍 15 – 웹 개발 단계별 가이드
시리즈 20. 왕초보 웹 프로그래밍 16 – 초보자들이 자주 하는 실수

오늘의 학습 순서입니다.

[API란 무엇인가? 초보자를 위한 쉬운 설명]

1. API란 무엇인가?
2. API의 중요성
3. API 사용 시 주의할 점


1. API란 무엇인가?

API는 Application Programming Interface입니다.
웹 애플리케이션이 서로 데이터와 기능을 교환할 수 있게 만들어줍니다.
예를 들어, 날씨 정보를 알려주는 사이트를 만들고 싶다면,
기상청의 날씨 API를 사용하면 쉽게 만들 수 있습니다.

쉽게 그림을 그려 설명드리겠습니다.
우리가 주로 사용하는 구글 로그인을 예시로 보여드리겠습니다.

지난 번 설명드렸던 클라이언트 – 서버 기억나시죠?
지금 보고계신 사이트 codinglee.com 을 보기위해서
브라우저에 codinglee.com을 검색하셔서 들어오셨다는 것은
제 서버에 요청을 보냈고, 제 서버가 응답을 제대로 했다는 것입니다.

여기서 제가 서버에 접근할 수 있는 권한을 제한할 수 있겠죠?
구글 로그인이 되어있는 사람만 접근하도록 할거야!!!
그럼 로그인이 되지 않으면 제 블로그 포스트는 보이지 않게 됩니다.

자. 보이시나요? Google 계정으로 로그인 버튼이 생겼습니다.
이제 사용자가 제 블로그를 보기 위해 저 버튼을 눌렀다고 생각해보겠습니다.

버튼을 누르면 제 서버는 이제 구글 로그인 API와 통신을 합니다.
내 사이트에 접속하려는 사람이 구글 사용자가 맞는지 아닌지 결과값을 받게됩니다.
구글에서 확인이 되면 사이트에 접속이 되게 됩니다.

위 그림을 보면 요청-응답이 엄청 많이 일어나는 것을 볼 수 있습니다.
첫 번째 그림에서 클라이언트 – 서버(codinglee.com) 관계는
요청, 응답이 발생하는 클라이언트-서버 관계입니다.
그리고 아래 그림에서 보면 서버(codinglee.com)과 구글 로그인API 역시
요청, 응답이 발생하는 클라이언트-서버 관계입니다.

API에 대해 이해가 되시나요?
그럼 이제 API가 왜 중요한지에 대해 알아보겠습니다.

2. API의 중요성

API는 다양한 서비스와 기능을 빠르게 통합할 수 있도록 돕습니다.
구글, 네이버, 카카오는 지도 API를 각각 제공합니다.
나의 웹 사이트에 지도가 필요할 때 제공하는 서비스의 API만 사용하면
아주 쉽게 추가할 수 있습니다. 날씨 데이터, 로그인 기능도 마찬가지 입니다.

  • 데이터 교환
    – API는 사이트와 애플리케이션이 서버와 데이터를 교환하게 합니다.
    – 쇼핑몰 사이트에서 다양한 물건과 가격, 상품정보를 볼 수 있는 것도 API 덕분입니다.
  • 외부 서비스 통합
    – 구글 로그인 같이 외부 서비스를 쉽게 추가할 수 있습니다.
    – 예) 결제시스템, SNS 로그인 시스템 등
  • 유연한 개발
    – 기능을 재사용하기 수월하고 유지보수를 더 쉽게 할 수 있습니다.

3. API 사용 시 주의할 점

API를 사용할 때 주의해야 할 점에 대해 알아보겠습니다.

  • API 키 보안
    – 대부분의 API에서는 API 키를 발급받습니다.
    – API키는 외부에 절대 노출되지 않도록 관리해야합니다.
    – 유료서비스의 경우 API키 노출로 과다한 지출이 발생할 수 있습니다.
  • 요청 제한
    – 무료 API는 하루에 사용할 수 있는 요청 제한 건수가 있습니다.
    – 예) 날씨 검색 하루 100회 무료
    – 한 번에 너무 많은 요청이 되지 않도록 제한해야 합니다.
  • CORS 문제
    – 다른 도메인의 API에 요청할 때 CORS(Cross-Origin Resource Sharing) 오류가 발생할 수 있습니다.
    – 예) codinglee.com 에서 codingpark.com 으로 api를 요청하면 CORS 정책에 따라 데이터를 받을 수 없다는 것입니다.
    – 서버의 설정을 변경하거나 프록시 사용, CORS 정책 허용 등 해결방법이 있습니다.

오늘은 여기까지 입니다.

오늘 API에 대해 알아보았습니다.
API는 웹 개발을 하다보면 반드시 만나는 필요한 기능입니다.
API에 요청하기도하고, 내가 API를 만들어 요청을 받기도 합니다.
왕초보를 넘어 중급 내용을 다룰 때 더욱 더 자세히 알려드리겠습니다.

감사합니다.
지금까지 Codinglee였습니다.

2024. 11. 06.(수) 이른 아침 판교에서 씀.

Similar Posts

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다