Uniform Resource Identifier
scheme:[//[user[:password]@]host[:port]][/path][?query][#fragment]URIs
URI Notion
rfc3986
Network Working Group T. Berners-Lee Request for Comments: 3986 W3C/MIT STD: 66 R. Fielding Updates:1738 Day Software Obsoletes:2732, 2396, 1808 L. Masinter Category: Standards Track Adobe Systems January 2005 Uniform Resource Identifier (URI): Generic Syntax Status of This Memo This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements.
https://datatracker.ietf.org/doc/html/rfc3986
rfc8820
Internet Engineering Task Force (IETF) M. Nottingham Request for Comments: 8820 June 2020 BCP: 190 Obsoletes:7320 Updates:3986 Category: Best Current Practice ISSN: 2070-1721 URI Design and Ownership AbstractSection 1.1.1 of RFC 3986 defines URI syntax as "a federated and extensible naming system wherein each scheme's specification may further restrict the syntax and semantics of identifiers using that scheme."
https://datatracker.ietf.org/doc/html/rfc8820

- 소문자를 되도록이면 사용하자
- 예를 들어 test.com의 자원(Resource) Test와 test가 있지만 대소문자에 따라 구분하기 때문에 다른 자원(Resource)으로 인식하게 된다.
- RFC 3986(URI 문법 형식)은 URI 스키마와 호스트를 제외하고는 대소문자를 구별하도록 규정하고 있다.
- 하이픈(-)은 URI 가독성을 높이는데 사용하자
확장자를 사용하지 말자
- REST API에서는 확장자를 사용하지 않으면서 자원(Resource)을 다루는 데 더 유연해 진다.
- 확장자 대신에 Accept Header를 사용하여 문제를 해결한다.
3. 자원을 표현하는 Collection과 Document
- 도큐먼트(Document)는 단순한 문서와 같은 존재
- 컬렉션(Collection) 문서들의 집합, 객체1들의 집합같은 존재
http://test.com/citys/seoul/gangnam- 위에 예제 중 citys가 컬렉션(Collection)에 해당되며 복수로 표현을 하고 있는 점이 중요하다.

Seonglae Cho