그리고 HTTP 통신을 사용하면 클라이언트가 누구든 상관없이 같은 방식으로 서버와 소통할 수 있습니다. iOS, 안드로이드, 웹, 다른 서버가 모두 같은 주소로 요청을 보낼 수 있습니다. 즉, 서버와 클라이언트가 분리되어 있다는 뜻입니다. 이렇게 서버와 클라이언트를 분리하면 추후에 서버를 확장할 때 클라이언트에 구애되지 않아 좋습니다.
이제 REST를 사용한 주소 체계로 RESTful한 웹 서버를 만들어보겠습니다. REST를 따르는 서버를 ‘RESTful하다’고 표현합니다. 코드를 작성하기 전에 표 3-1처럼 대략적인 주소를 먼저 설계하는 것이 좋습니다. 주소 구조를 미리 머릿속에 정리해둔 후 코딩을 시작하면 더욱 체계적으로 프로그래밍할 수 있습니다.
▼ 표 3-1 REST에 기반한 서버 주소 구조
|
HTTP 메서드 |
주소 |
역할 |
|
GET |
/ |
restFront.html 파일 제공 |
|
GET |
/about |
about.html 파일 제공 |
|
GET |
/users |
사용자 목록 제공 |
|
GET |
기타 |
기타 정적 파일 제공 |
|
POST |
/users |
사용자 등록 |
|
PUT |
/users/사용자id |
해당 id의 사용자 수정 |
|
DELETE |
/users/사용자id |
해당 id의 사용자 제거 |