URL 이 도대체 뭐예요?
모든 URL 은 구조를 가진 주소예요 — 읽는 법을 배워요
⏱ 예상 ~4분
01 · 읽기
평생 URL 을 클릭해 왔어요. 하지만 엔지니어로서는 그걸 읽을 줄 알아야 해요 — 그냥 클릭만 하는 게 아니라요.
모든 URL 은 여러 부분으로 이루어져 있고, 각 부분에는 의미가 있어요. URL 을 분해할 줄 알게 되면 어떤 API 든 이해하고, 어떤 요청이든 디버그하고, 어떤 네트워크 기능이든 만들 수 있어요.
💡 상상해 봐요URL 은 우편 주소 같아요. Protocol 은 배송 방법 (항공 vs 육로), host 는 도로 주소, path 는 아파트 호수, query string 은 봉투에 붙인 추가 지시사항 메모예요.
핵심 정리
- URL 은 구조를 가져요 — 각 부분에 이름과 용도가 있어요
- Query string (?key=value) 은 선택적 파라미터를 전달하는 방식이에요
- /users/42 같은 path 는 '리소스 users, 항목 42' 를 뜻해요
- 같은 host 도 수천 개의 다른 path 를 가질 수 있어요
02 · 코드 예제
실제 URL 하나를 각 부분으로 분해해 봐요.
전체 URL
https://api.github.com/users/torvalds/repos?per_page=5&sort=updated
Protocol (프로토콜)
https://
"How to talk" — encrypted HTTP connection.
Always https:// for real APIs (not http://).
Host (호스트)
api.github.com
"Who to talk to" — the server's address on the internet.
DNS translates this to an IP like 140.82.121.6.
Path (경로)
/users/torvalds/repos
"What to ask for" — the specific resource on that server.
Like a file path, but for API resources.
Query String (쿼리 문자열)
?per_page=5&sort=updated
"Extra options" — key=value pairs after the ?.
per_page=5 means "give me 5 results".
sort=updated means "sort by last updated".
? 는 query string 의 시작을 나타내요. 각 파라미터는 key=value 예요. 여러 파라미터는 & 로 구분해요. Server 는 각각을 옵션이나 필터로 읽어요.
03 · 분류 드래그
아래 각 URL 조각이 어느 부분에 속하는지 판단해 봐요.
(이 섹션은 인터랙티브해요 — JavaScript를 켜 주세요.)
04 · 퀴즈
URL https://api.example.com/products?category=shoes&limit=20 에서 limit=20 은 뭘 하나요?
- 서버의 port 20 에 연결해요
- 'limit' 을 쿼리 파라미터로 전달하고 값은 '20' — 서버가 어떻게 처리할지 결정해요
- 서버의 CPU 사용량을 20% 로 제한해요
- URL 의 최대 길이를 20 자로 설정해요
⚠ 전체 인터랙티브 경험에는 JavaScript가 필요해요. JavaScript를 켜고 새로 고침해 주세요.
※ 이 사이트는 독립 운영되는 교육 프로젝트로, Anthropic의 공식 제품이 아니에요. Claude™ 는 Anthropic, PBC 의 상표예요.