WebSocket: метод close()
Базовая поддержка Широко доступна
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
Примечание: Эта функция доступна в Web Workers.
Метод WebSocket.close() закрывает подключение WebSocket или попытку подключения, если таковая имеется. Если подключение уже CLOSED, этот метод ничего не делает.
Примечание: Процесс закрытия подключения начинается с рукопожатия закрытия, и метод close() не отбрасывает ранее отправленные сообщения перед запуском этого рукопожатия; даже если пользовательский агент всё ещё занят отправкой этих сообщений, рукопожатие начнется только после их отправки.
Синтаксис
close() close(code) close(code, reason)
Параметры
codeНеобязательно-
Целое число код закрытия подключения WebSocket, указывающее причину закрытия:
- Если не указано, код закрытия подключения автоматически устанавливается: в
1000для нормального закрытия или в иное стандартное значение в диапазоне1001-1015, указывающее фактическую причину закрытия подключения. - Если указано, значение этого параметра
codeпереопределяет автоматическое установление кода закрытия подключения и устанавливает вместо него пользовательский код. Значение должно быть целым числом: либо1000, либо пользовательский код в диапазоне3000-4999. Если вы указываете значениеcode, вы также должны указать значениеreason.
- Если не указано, код закрытия подключения автоматически устанавливается: в
reasonНеобязательно-
Строка, предоставляющая пользовательское объяснение закрытия подключения WebSocket (краткое человекопонятное объяснение закрытия). Значение не должно превышать 123 байта (в кодировке UTF-8).
Примечание: Так как UTF-8 использует от двух до четырёх байт для кодирования любых не-ASCII символов, значение
reasonдлиной в 123 символа, содержащее не-ASCII символы, превысит лимит в 123 байта.Если вы указываете значение
reason, вы также должны указать значениеcode.
Возвращаемое значение
None (undefined).
Исключения
-
InvalidAccessErrorDOMException -
Выбрасывается, если
codeне является целым числом, равным1000, или целым числом в диапазоне3000–4999. -
SyntaxErrorDOMException -
Выбрасывается, если значение
reasonв кодировке UTF-8 превышает 123 байта.
Спецификации
| Спецификация |
|---|
| WebSockets # ref-for-dom-websocket-close① |
Совместимость с браузерами
| Десктопные | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
close |
5 | 12 | 7 | 12.1 | 5 | 18 | 7 | 12.1 | 4.2 | 1.0 | 4.4 |
См. также
- RFC 6455 (спецификация протокола WebSocket)
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/close