kimjingyu 2022. 12. 30. 09:29
728x90
  • URI : Uniform Resource Identifier
    • Uniform : 리소스를 식별하는 통일된 방식
    • Resource : 자원, URI로 식별할 수 있는 모든 것 (제한 없음)
    • Identifier : 다른 항목과 구분하는데 필요한 정보 
  • URL (Locator) : 리소스가 있는 위치를 지정
  • URN (Name) : 리소스에 이름을 부여
    • URN 이름만으로 실제 리소스를 찾을 수 있는 방법이 보편화 되지 않음.


  • URI는 locator, name 또는 둘 다 추가로 분류될 수 있다.
    • URL : Resource Locator
      • 리소스의 위치
    • URN : Resource Name
      • 리소스의 이름


URL (전체 문법)

  • Scheme://[userinfo@]host[:port][/path][?query][#fragment]
    • scheme
      • 주로 프로토콜 사용
      • 프로토콜 : 어떤 방식으로 자원에 접근할 것인가 하는 약속 규칙
        • http(80), https(443), ftp(21) 등 포트는 생략 가능
        • https는 http에 보안 추가 (HTTP Secure)
    • userinfo
      • URL에 사용자정보를 포함해서 인증해야 할 때 사용
      • 거의 사용하지 않음
    • host
      • 호스트명
      • 도메인명 또는 IP 주소를 직접 사용이 가능
    • port
      • 포트 번호
      • 접속 포트
      • 일반적으로 생략
    • path
      • 리소스 경로
      • 계층적 구조
        • /home/file1.jpg -> 디렉토리 구조
        • /members -> 회원들에 대한 정보가 있는 컬렉션
          • /members/100 -> 그 중 100번째 회원에 대한 정보
        • /items/iphone12
    • query
      • 쿼리 파라미터
      • key=value 형태
      • ?로 시작, &로 추가 가능
        • ?keyA=valueA&keyB=valueB
      • query parameter, query string 등으로 불림
      • 웹 서버에 제공하는 파라미터
      • 문자 형태
    • fragment
      • https://dcos.spring.io/spring-boot/docs/current/reference/html/getting.started.html#getting-started-introducing-spring-boot
      • html 내부 북마크 등에 사용
      • 서버에 전송하는 정보는 아님
728x90