티스토리 뷰

카테고리 없음

3주차 파트6 [백엔드 기초 1]

파이썬 초보 파이리 2025. 2. 12. 23:34

API(Application Programming Interface)란?

API는 어플리케이션과 프로그램 간의 상호작용을 가능하게 해주는 인터페이스다.
즉, 하나의 소프트웨어가 다른 소프트웨어의 기능을 사용할 수 있도록 정해진 규칙을 제공한다.

 

: 지하철 도착어플?카카오맵, 네이버 지도, 개인 어플

ex)서울 교통공사 데이터베이스 -> 개인

 

*인터페이스란 : 중간에서 양쪽에 있는 친구들을 중재/매개체가 되어주는 역할

ex) GUI : 컴퓨터(프로그램)한테 명령을 내릴때, 그래픽을 사용해서 명령을 내리는 방식

CLI : 명령어 문장으로 컴퓨터에게 명령을 내리는 것.


HTTP 프로토콜 템플릿

  • head
  • body

1) 전달해줄 데이터/화면/...

2)이 데이터 좀 줄래?+"목적"(조회, 등록 등)

REST API(Representational State Transfer API)

REST API는 HTTP 프로토콜을 기반으로 동작하는 API 설계 원칙으로, REST 아키텍처의 원칙을 따르는 API다.

무상태성(Stateless)

  • 서버는 클라이언트의 상태를 저장하지 않는다.
  • 각 요청은 독립적으로 처리되며, 필요한 데이터는 요청에 포함되어야 한다.

클라이언트-서버 구조(Client-Server Architecture)

  • 클라이언트와 서버는 독립적으로 동작하며, 서로의 내부 구현을 알 필요가 없다.

계층형 시스템(Layered System)

  • 클라이언트는 직접 서버와 통신하는 것이 아니라, 여러 계층을 거쳐 데이터를 주고받을 수 있다.

캐시 가능(Cacheable)

  • 응답 데이터를 캐싱하여 성능을 최적화할 수 있다.

일관된 인터페이스(Uniform Interface)

  • 일관된 URL 형식과 HTTP 메서드를 사용하여 표준화된 방식으로 리소스에 접근한다.

URL(Uniform Resource Locator)이란?

: 인터넷 상에서 웹 페이지가 어디있는지 위치를 알려주는 것 뿐 아니라, 데이터 연산 해달라고 서버에 요청을 보내는 방법.

-> 쉽게 말해서, 웹 페이지 주소라고 할 수 있습니다.

 

인터넷에서 특정 리소스를 찾을 수 있는 주소를 의미한다.
RESTful API에서는 URL을 통해 리소스를 명확하게 식별하며, 다음과 같은 규칙을 따른다.

  • 소문자만 사용(대문자는 사용하지 않음)
  • 하이픈(-) 사용 가능, 언더바(_) 사용 불가능
  • 마지막에 슬래시(/) 포함하지 않음
  • 행위(목적)를 포함하지 않음 (예: /getUsers → /users)
  • 파일 확장자 포함하지 않음 (.json, .xml 등 생략)
  • 리소스명은 복수형 사용 (예: /user → /users)

URL + method 연습

http://localhost:8888/post product - 상품 등록 - > "POST"/product

http://localhost:8888/select-all-products - 전체 상품 조회 -> "GET"/products

http://localhost:8888/deleteallProducts - 전체 상품 삭제 -> "DELETE"/products

 

 

ex) 쇼핑몰 메인 페이지 틀 -> 전체 상품 조회 API -> 전체 상품 데이터를 받고 -> 받은 데이터를 화면에 뿌려주기

상품 상세 페이지 틀 -> 상품 1 개별 조회 -> 데이터를 받아서 -> 틀에 맞게 뿌려주기

상품 관리 페이지 틀 -> 전체 상품 조회 APT -> 전체 상품 데이터 ...

상품 수정 페이지 틀 -> 상품 1 개별 조회 API    //완료 -> 상품1 수정 API 

 

URL + method 연습 2 "API 설계"

1. 상품 전체 조회 GET

http://localhost:8888/products

2. 상품 id 개별1 조회 GET

/products/{id}

http://localhost:8888/products/1

3. 상품 id 개별2 조회 GET

http://localhost:8888/products/2

4. 상품 개별 수정 PUT

/products/{id}

 

cf. 복수형으로 표현하는 이유 :

상품 들 중에 id 값을 가지는 개별 데이터

통일감


HTTP 메서드(HTTP Method)

HTTP 메서드는 클라이언트가 서버에 요청을 보낼 때 사용하는 명령어다.

  • GET: 리소스를 조회할 때 사용
  • POST: 리소스를 생성할 때 사용
  • PUT / PATCH: 리소스를 수정할 때 사용
  • DELETE: 리소스를 삭제할 때 사용

REST API는 URL과 HTTP 메서드를 조합하여 원하는 리소스를 조회, 생성, 수정, 삭제할 수 있도록 설계된다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/12   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함