여러 서비스를 개발 할때 REST API란 이름으로 우리는 API를 만든다.

그러면서도 우린 아니 나는 REST API가 무엇인지 정확히 모르고 있었다.

그러던 차에 https://tv.naver.com/v/2292653

그런 REST API로 괜찮은가? 라는 영상을 보게되었다.

다들 시간이 날때 보면 좋을거 같다.


우선 REST란 말의 해석을 보면

Representational State Transfer 의 약자

이렇게 나온다.
몬지 모르겠다...


rest란말은 로이필딩(roy fielding)이란 사람이 여러사람과

http1.0을 정립하고 명세를 하게되었는데

http를 고치게되면 기존 웹과의 호환성의 문제가 생길 수 있었다.

웹을 망가트리지않고 http를 진보 시킬방법을 생각하다

Http Object Model이란 해결책을 만들게 되었다.


이 Http Object Model이 Rest 정의의 시작이다.


RestAPI

- 여러 아키텍쳐스타일의 집합(6가지)

동영상을 보면 다 나온다.

- 그중 uniform interface를 지키지 않는경우가 많다.


uniform interface란?

메세지는 스스로 설명해야한다.

- 목적지,명세를 표현해줘야한다.

- HETEOAS

전이가 될 수 있어야한다.

예를 들어 글 목록 -> 글 쓰기 -> 글 저장 -> 글 보기 -> 글 목록

링크를 타고 할 수 있게 되는 것이다.

- 명세

명세는 id,title란 정보가 있으면 그게 무엇인지 표현해주는것을 말한다.


uniform interface을 신경 써야하는 이유

- 서버와 클라이언트가 독립적으로 진화한다.

- 서버가 기능 변경이 되어도 클라이언트는 업데이트를 할 필요없다.

예를 들어 이전글,다음글을 보게 개발되어있을때 링크정보가 있다면

클라이언트는 변경할 것이 없다.


RestAPI로 안만들어도 될때는?

- 서버가 클라이언트를 통제가능할때 

혼자 다 개발하면 신경안써도된다.

- 진화에 관심 없을때

여러번의 업데이트등이 문제안될때


다음번 API개발할때는

RestAPI개념을 정확히 하여 개발해보자.

+ Recent posts