restful pattern policy

13
REST 24-1 김남훈

Upload: namhoon-kim

Post on 18-Jul-2015

92 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: RESTful pattern policy

REST24-1 김남훈

Page 2: RESTful pattern policy

What is REST?1.

CRUD operations2.

Example3.

Page 3: RESTful pattern policy

World Wide Web

Page 4: RESTful pattern policy

What is REST?

REpresentation State TransferWWW과같은시스템을위한소프트웨어아키

텍쳐우리가주로쓰는건 RESTful로지칭

Page 5: RESTful pattern policy

What is REST?REST대규모네트워크시스템을위한디자인패턴2000년 Roy Fielding박사가제안최근엔 XML과 HTTP를사용하는단순한웹기반인터페이스를지칭

Page 6: RESTful pattern policy

What is REST?

구체적인 REST최근 Open API 구현에많이사용됨구글, 플리커, 아마존등의 API가 REST방식으로구현되어공개서비스의서버플랫폼구축에있어필수적인아키텍쳐로인식

실제표준은아님, 하지만웹표준만을사용

Page 7: RESTful pattern policy

What is REST?

REST은표준이아니다.1. W3C에서 REST를찾아볼수없다.2. IBM, Microsoft, Sun에서 REST 개발자도구를찾을수없다.

REST는단지디자인패턴일뿐이다.1. 단지 REST의규칙에따라웹서비스를설계하면된다.

Page 8: RESTful pattern policy

What is REST?

하지만 REST는웹표준을준수한다.1. HTTP2. URL3. XML/HTML/JSON/GIF/JPEG (Representation)4. text/xml, text/html, image/gif, image/jpeg (Type)

Page 9: RESTful pattern policy

What is REST?

REST가성공한이유는?1. 클라이언트/서버가상태를유지할필요가없다.2. 어디서나적용되는인터페이스를가지고있다.3. GET, POST, PUT, DELETE를지원한다. (HTTP)4. 모든리소스를 URL로지칭할수있다.5. 쿠키나세션을사용하지않는다.

Page 10: RESTful pattern policy

CRUD Operation

CRUD 설계?1. Create - POST2. Read - GET3. Update - PUT4. Delete - DELETE

Page 11: RESTful pattern policy

How to use REST

RESTful서비스구축원칙1. 제공하고자하는리소스를결정한다.2. 각리소스에접근하는 URL을정의한다.3. 공개리소스에대해서권한을결정한다.

4. GET으로접속하는경우데이터변경의방지를처리한다.단순조회 – GET, 변경 – POST, PUT, DELETE

5. 리소스간의관계도를지정한다.6. 리소스가단계적으로접근할수있도록깊이(Depth)를설정한다.7. 응답결과의타입을지정한다.

Page 12: RESTful pattern policy

How to use RESTRESTful Example – Google Map

http://maps.google.com/maps/api/staticmap?center=37.5,127.34&zoom=14

서버URL GPS값 지도level

Page 13: RESTful pattern policy

Q & A