URI (Uniform Resource Identifier)
- 특징
- 자원을 식별하는 모든 문자열의 총칭
- 위치(URL) 또는 이름(URN)으로 식별 가능
- 반드시 위치를 알려줄 필요는 없다.
- 장점
- 자원을 전 세계적으로 유일하게 식별 가능
- 위치가 바뀌어도 자원 자체를 지칭할 수 있음
- 범용적 → URL, URN 다 포함
- 단점
- 범위가 넓어서 실무에서 “URI = URL”혼용 → 혼동 발생
- 단독으로는 자원에 접근하는 방법이 보장되지 않음
- 예시
- urn:isbn:0451450523 → 책 자원
- mailto:[email protected] → 이메일 자원
- https://example.com/users/1 → 웹 자원 (URL이자 URI)
URL (Uniform Resource Locator)
- 특징
- 자원의 위치를 명시
- 스킴(프로토콜), 호스트명, 경로, 쿼리 파라미터 등으로 구성
- 웹에서 가장 흔히 사용하는 URI 형태
- 장점
- 자원을 찾을 수 있는 정확한 위치 제공
- 브라우저 등에서 바로 접슨 가능(http, https, ftp 등)
- REST API에서 직관적 자원 식별 가능
- 단점
- 위치 기반이므로 서버 주소나 구조 변경 시 깨질 수 있음
- 자원은 그대로인데 URL이 바뀌면 접근 불가
- 식별자라기보다 주소라서 영속성이 약할 수 있음
- 예시
- https://example.com/users/1 → 특정 사용자 리소스
- ftp:/files.example.com/data.zip → ftp 자원
- [file:///c:/temp/test.txt](file:///c:/temp/test.txt) → 로컬 파일