Закрити код1006 - це спеціальний код, який означає, що зв’язок був аномально (локально) закритий реалізацією браузера.
Якщо клієнт вашого браузера повідомляє про закриття коду 1006, то вам слід переглянути websocket.onerror(evt)детальну інформацію про подію.
Однак Chrome рідко повідомляє про будь-які 1006причини близького коду стороні Javascript. Ймовірно, це пов’язано з правилами безпеки клієнта в специфікації WebSocket, щоб запобігти зловживанню WebSocket. (наприклад, використовувати його для пошуку відкритих портів на цільовому сервері або для створення безлічі з'єднань для атаки відмови в обслуговуванні).
Зверніть увагу, що Chrome часто повідомляє про закритий код, 1006якщо під час оновлення HTTP до Websocket виникає помилка (це крок до технічного «підключення» WebSocket). З таких причин, як погана автентифікація чи авторизація, або неправильне використання протоколу (наприклад, запит на підпротокол, але сам сервер не підтримує цей самий підпротокол), або навіть спроба розмови з місцем сервера, яке не є WebSocket ( наприклад, спроба підключитися до ws://images.google.com/)
Принципово, якщо ви бачите закритий код 1006, у вас є дуже низький рівень помилки з самим WebSocket (подібно до "Неможливо відкрити файл" або "Помилка сокета"), яка насправді не призначена для користувача, оскільки вказує на проблему низького рівня з вашим кодом та реалізацією. Виправте свої проблеми низького рівня, і тоді, коли ви під’єднаєтесь, ви зможете включити більш розумні коди помилок. Ви можете досягти цього з точки зору масштабу або суворості у своєму проекті. Приклад: інформація та рівень попередження є частиною конкретного протоколу вашого проекту і не спричиняють припинення з’єднання. Зі серйозними або фатальними повідомленнями звітність також використовується за допомогою протоколу вашого проекту, щоб передати стільки деталей, скільки вам потрібно, а потім закриття з'єднання, використовуючи обмежені можливості WebSocket.
Майте на увазі, що коди закриття WebSocket дуже суворо визначені, і фраза / повідомлення з близькою причиною не може перевищувати 123 символи (це навмисне обмеження WebSocket).
Але не все втрачено, якщо ви просто хочете отримати цю інформацію з причин налагодження, деталі закриття та її основна причина часто повідомляються з достатньою кількістю деталей у консолі Javascript Chrome.