[참고 사이트]
- ASP.NET Web API를 활용한 RESTful 서비스 개발 문서 참조
1. REST(Representational State Transfer)
(정의)
- ROA(Resource Oriented Arvhitecture)를 따르는 웹 서비스 디자인 표준
- 월드 와이즈 웹과 같은 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍처의 한 형식
- REST 원리를 따르는 시스템은 종종 RESTful이란 용어로 지칭
-CRUD(Create Read Update Delete)에 해당하는 4가지의 메서드만 사용
METHOD | CRUD | SQL | 용도 |
POST | Create | INSERT | ㅋㅓㄹ렉션에 새로운 리소스를 만들거나 컨트롤러를 실행할때 사용 |
GET | Read | SELLECT | 리소스 상태의 표현을 얻을때 사용 |
PUT | Update | UPDATE | 새로운 리소스를 스토어에 추가하거나 기존 리소스를 갱신할때 사용 |
DELETE | Delete | DELETE | 리소스 제거 |
(2) RESTful 서비스
- REST의 개념에 기반해서 구현된 서비스
- HTTP 를 사용해서 데이터 전송 및 처리
- URL를 이용해서 리소스에 접근
- 상대적으로 단순하고 사용하기 쉬움
(3) 기존 방식의 웹 접근과 RESTful API와의 요청 URL 차이
2. WEB API
(1) 정의
- HTTP 서비스
- 다양한 클라이언트에서 접근이 가능하도록 설계
- 응용프로그램 프로토콜로 HTTP 사용
(2) 사용이유
- HTTP 표준 접근 방식을 이용
- 플랫폼 환경의 제한이 없는 서비스 구현 가능
- 클라이언트 환경의 제한이 없는 서비스 구현 가능
[플랫폼 환경의 제한이 없는 서비스]
[플랫폼 환경의 제한이 없는 서비스]
(3) ASP.NET 관계
(4) ASP.NET Web API 계보
(5) ASP.NET MVC Framework 와 WCF(Windows Communication Framework) Web API결합
(6) 특징
- HTTP 기반의 프로그래밍 모델 지원
- 간단하고 쉽게 HTTP 리소스 생성 가능
- HTTP 내용 협상(content negotion)
- 공통 관심사(crose cutting concerns)의 분리
- 도움말 페이지(help page) 생성
- 유연한 호스팅(hosting)
- 이식 가능한 Web API클라이언트
- Web API 보안(CORS, OAuth2.0, AuthnFilter)
- 가볍고, 테스트 가능하고, 확장이 가능함
'Web?' 카테고리의 다른 글
MVC, MVP, MVVM 차이점 (0) | 2016.07.06 |
---|---|
ASP.NET UTF-8로 웹사이트 개발 방법 (0) | 2016.07.05 |
API? [ application programming interface ] (0) | 2016.07.05 |
web? (0) | 2015.01.09 |
웹퍼블리셔는 할 일도 많군 (0) | 2015.01.09 |