Back to questions
Junior — Middle
85
Можете объяснить, что такое веб-сокеты и как они работают в контексте веб-разработки?
Answer from AI
sobes.tech AI
Веб-сокеты — это протокол, который обеспечивает двунаправленное постоянное соединение между клиентом (например, браузером) и сервером. В отличие от классического HTTP, где клиент отправляет запрос и получает ответ, веб-сокеты позволяют серверу отправлять данные клиенту в любое время без повторных запросов.
Работают они так:
- Клиент инициирует соединение через HTTP с заголовком
Upgrade: websocket. - Если сервер поддерживает веб-сокеты, происходит «апгрейд» соединения с HTTP на веб-сокет.
- После установления соединения клиент и сервер могут обмениваться сообщениями в реальном времени.
Пример использования — чат, онлайн-игры, обновление данных на странице без перезагрузки.
Пример на JavaScript для подключения к веб-сокету:
const socket = new WebSocket('wss://example.com/socket');
socket.onopen = () => {
console.log('Соединение установлено');
socket.send('Привет сервер!');
};
socket.onmessage = event => {
console.log('Получено сообщение:', event.data);
};