Блок 1 · Урок 5 из 7
Адрес в строке браузера — не случайный набор символов, а аккуратная структура, как почтовый адрес. Научитесь читать его части — и «странная ссылка» превратится в карту.
Зачем это вам
«Добавь query-параметр», «эндпоинт по пути /api/users», «это другой домен — будет CORS», «у тебя порт 3000 занят» — всё это про части URL. Когда вы видите в адресе структуру, вы понимаете, куда уходит запрос, что именно он просит и чем отличается локальная версия от продакшена. Для аудитории разбор URL — простой и эффектный способ показать, что «магическая ссылка» на самом деле читается по слогам.
Главное
Возьмём типичную ссылку и разложим по цветам:1
https — зашифрованно (см. прошлый урок).?, пары имя=значение.📌 А где порт? Иногда после домена стоит :число — это порт, конкретная «дверь» на сервере. Обычно он скрыт (для https подразумевается 443), но вы видите его в разработке: localhost:3000 — это «мой компьютер, дверь 3000».
Аналогия, которую можно пересказать
URL устроен как адрес на конверте — просто читается слева направо «сверху вниз по точности»:
Запомните одно разделение
Домен решает, какой сервер ответит. Путь — что у него попросить. Query — какие уточнения к запросу. Разложив любую ссылку так, вы сразу понимаете, куда она ведёт и что делает.
Два практичных следствия. Первое: localhost:3000 и ваш-сайт.ru — это один и тот же запрос, но к разным доменам (своя машина против продакшена) — отсюда «у меня работает, на проде нет». Второе: если запрос уходит на другой домен, чем сам сайт, браузер включает защиту — то самое «CORS» (разберём в блоке про API).
Что это даёт на практике
?имя=значение — уточнение (фильтр, поиск), без новой страницы./api/users»URL — адрес ресурса в вебе; состоит из схемы, домена, (порта), пути, query и фрагмента.
Домен (хост) — имя сервера, который отвечает (shop.example.com).
Путь — что именно запрашиваем у сервера (/catalog/42).
Query-параметры — уточнения после ? в виде имя=значение.
Порт — «дверь» на сервере (:3000); обычно скрыт, виден в разработке.
Проверьте себя
1. В адресе https://shop.ru/catalog/42 какая часть — домен?
Домен (хост) — shop.ru: он решает, какой сервер ответит. /catalog/42 — это путь, https:// — схема.
2. Что обычно передаётся в query-параметрах (после ?)?
Query — это «пометки на конверте»: ?color=red&size=M. Имя сервера — это домен; секреты в URL не передают.
3. Что такое :3000 в localhost:3000?
Порт — конкретная дверь на машине. localhost:3000 = ваш компьютер, порт 3000; типичный адрес dev-сервера.
4. Какая часть URL не отправляется на сервер, а указывает место на странице?
Фрагмент #reviews — якорь: браузер прокручивает к этому месту на уже загруженной странице, на сервер он не уходит.
Куда мы идём