URL을 이용한 정보의 전달 - 쿼리스트링, 시맨틱 URL

2023. 12. 21. 11:30Preliminary/Server

728x90

URL이란?

URL은 Uniform Resource Locator의 약자입니다. URL은 웹에서 주어진 고유 리소스 주소를 나타냅니다. 하이퍼텍스트와 HTTP 프로토콜에서 핵심 개념 중 하나로 URL은 웹에 게시된 리소스를 검색하기 위해 브라우저에서 사용하는 메커니즘입니다. (참고: https://developer.mozilla.org/ko/docs/Learn/Common_questions/Web_mechanics/What_is_a_URL)

URL의 구조

URL의 구조는 아래의 그림과 같다. URL은 프로토콜과 호스트 그리고 서브 디렉토리로 구성되어있다. 호스트는 IP주소인데, 이것을 편리하게 인식하게끔하기 위해 도메인 이름을 지정하여 활용한다. 

URL 주소 예시

정보의 전달

쿼리스트링

위의 URL 그림에서 서브 디렉토리는 서버에서 라우팅을 함으로써 구현된다. 예를들어 위의 예시에서 www.example.com:433 라는 도메인 주소에서 '/category/blog'라는 주소로 라우팅을 한 것이다. 그렇다면, 하나의 라우팅에서 경우에 따라 다른 결과를 보여줄 수 있지 않을까 ? 라는 생각을 하게 되는데 그 역할을 수행하는 것이 쿼리스트링이다.

쿼리 스트링 예시

위의 쿼리 스트링 예시에서 보았을 때, '/topic'이라는 라우팅에서 id 인자 값이 1, 2, 3인 경우에 따라 다르게 표현되는 것을 볼 수 있다. 하지만, 이렇게 나타내었을 때, 인식하기 어려운 단점이 있다. 이를 보완하기 위해 Semantic URL 이라는 것을 사용한다.

Semantic URL

semantic URL의 예시는 아래와 같다.

위 그림 2번째 행의 예시에서 보면, 쿼리스트링 id 인자의 값으로 1을 전달하고 있는데, 이것이 semantic URL에서 보면 '/1'이라는 값으로 표현되는 것을 볼 수 있다.

이렇게 표현하면 훨씬 직관적이고, SEO(검색 엔진 최적화)에도 더 적합하게 URL을 만들 수 있다는 장점이 있다.

[참고]

https://www.inflearn.com/course/nodejs-%EA%B0%95%EC%A2%8C-%EC%83%9D%ED%99%9C%EC%BD%94%EB%94%A9/dashboard