Является ли веб-браузер клиентом в клиент-серверной архитектуре?

«Является ли веб-браузер клиентом в клиент-серверной архитектуре?» — вопрос из категории Архитектура, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Да, является. В контексте веб-приложений браузер выступает в роли клиента (user-agent). Он отправляет HTTP/HTTPS запросы на сервер, получает ответы (HTML, CSS, JS, данные) и отображает их пользователю.

Пример взаимодействия (клиентский код):

// Браузер (клиент) отправляет асинхронный GET-запрос (AJAX/Fetch)
fetch('https://api.example.com/data')
  .then(response => response.json())
  .then(data => console.log(data));

Браузер также может быть клиентом для других протоколов (WebSocket, WebRTC) в рамках более сложных приложений.