본문 바로가기
Progamming/BoostCourse

Web API란?

by 동그란 혜주 2019. 1. 22.
  • 들어가기 전에

Web API에 대해 알아보고 REST API와 Web API의 차이에 대해 알아보자. Web API를 잘 작성하기 위한 디자인 가이드에 대해 살펴보자.




  • 학습 목표

1. REST API와 Web API의 차이에 대해 이해해보자.

2. Web API의 디자인 가이드에 대해 이해해보자.




  • 핵심 개념

- Web API

- HTTP Methods




  • Web API 디자인 가이드

- URI는 정보의 자원을 표형해야한다.

- 자원에 대한 행위는 HTTP Method(GET, POST, PUT, DELETE)로 표현한다.




  • URI는 정보의 자원을 표현해야 한다.

- GET /members

· 위의 표현은 멤버의 모든 정보를 달라는 요청입니다.

- GET /members/delete/1

· GET은 정보를 요청할 때 사용한다. 위와 같이 동사로 삭제를 표현하면 안된다.

- DELETE /members/1

· HTTP Method 중의 하나인 DELETE를 이용하여 삭제를 표현해야 한다.




  • 슬래시 구분자(/)는 계층을 나타낼 때 사용

- URI 마지막 문자로 슬래시 구분자(/)를 포함하지 않는다.

- 하이픈(-)은 URI 가독성을 높일 때 사용한다.

- 언더바(_)는 사용하지 않는다.

- URI 경로는 소문자만 사용한다.

- RFC 3986(URI 문법 형식)은 URI 스키마와 호스트를 제외하고는 대소문자를 구별한다.

- 파일 확장자는 URI에 포함하지 않는다.

- Accept Header를 사용한다.




  • 상태 코드(성공)

- 200 : 클라이언트의 요청을 정상적으로 수행함

- 201 : 클라이언트가 어떠한 리소스 생성을 요청, 해당 리소스가 성공적으로 생성됨(POST를 통한 리소스 생성 작업 시)




  • 상태 코드(클라이언트로 인한 오류)

- 400 : 클라이언트의 요청이 부적절할 경우 사용하는 응답 코드

- 401 : 클라이언트가 인증되지 않은 상태에서 보호된 리소스를 요청했을 때 사용하는 응답 코드 (로그인 하지않은 유저가 로그인 했을 때, 요청 가능한 리소스를 요청했을 때)

- 403 : 유저 인증상태와 관계없이 응답하고 싶지 않은 리소스를 클라이언트가 요청했을 때 사용하는 응답 코드(403보다는 400이나 404를 사용할 것을 권고, 403 자체가 리소스가 존재한다는 뜻이기 때문에)

- 405 : 클라이언트가 요청한 리소스에서는 사용 불가능한 Method를 이용했을 경우 사용하는 응답 코드




  • 상태 코드(서버로 인한 오류)

- 301 : 클라이언트가 요청한 리소스에 대한 URI가 변경 되었을 때 사용하는 응답 코드(응답 시 Location header에 변경된 URI를 적어줘야 한다)

- 500 : 서버에 문제가 있을 경우 사용하는 응답 코드

'Progamming > BoostCourse' 카테고리의 다른 글

자바스크립트 객체  (0) 2019.02.10
자바스크립트 배열  (0) 2019.02.03
Rest API란?  (0) 2019.01.22
JDBC란?  (0) 2019.01.22
Maven이란?  (0) 2019.01.22

댓글