How We Coding

# REST

- REpresentational State Transfer

- REST is an architecture style for designing networked applications.(wiki)

- 표면적인 실체는 '스타일' 또는 '패턴'이라고 할 수 있다고 한다.




# RESTful API

- REST한 방식의 API란, 아래와 같이 잘 설계된 API를 의미한다고 한다.

  ・ 웹을 근간으로 하는 HTTP Protocol 기반이다.

  ・ 리소스는 URI(Uniform resource Identifiers)로 표현하며, 말 그대로 '고유'해야한다.

  ・ URI는 단순하고 직관적인 구조여야 한다.    

  ・ 리소스의 상태는 HTTP Methods를 활용해서 구분한다.

  ・ xml/json을 활용해서 데이터를 전송한다. (주로 json)



# CRUD

- 네트워크를 통해 웹 리소스(resource)를 다루기 위한 행위들.

- 각각의 행위를 처리하기 위한 HTTP methods(POST, GET, PUT, DELETE) 가 있다.

  ・ Create (POST)

  ・ Retrive (GET)

  ・ Update (PUT)

  ・ Delete (DELETE)



# API Design

- 복수명사를 사용 (/movies)

- 필요하면 URL에 하위자원을 표기함. (/movies/23)

- 필터조건을 허용할 수 있음 ( /movies?state=active)



# Example


 URL

Methods 

설명 

 /movies/

 GET

모든 영화 리스트 가져오기 

 /movies/

POST 

영화 추가 

 /movies/:title 

GET 

title 해당 영화 가져오기 

 /movies/:title

DELETE 

title 해당 영화 삭제 

 /movies/:title 

PUT 

title 해당 영화 업데이터 

 / movies?min=9

GET 

상영중인 영화 리스트 



'H6 > backend (Node.js, tsc)' 카테고리의 다른 글

<6> tsconfig.json 을 통한 컴파일 옵션 설정  (0) 2018.01.31
<5> node-mysql (Typescript)  (0) 2018.01.22
<4> MySQL & node-mysql  (0) 2018.01.22
<3> 에러처리..  (0) 2018.01.22
<2> app.ts 및 server.ts 만들기  (0) 2018.01.22