Соединение Websocket работает в Chrome, но не удается подключиться в Firefox? - PullRequest
0 голосов
/ 23 сентября 2018

Все работает как надо в хроме.без проблем.

В Firefox я получаю сообщение об ошибке: Firefox не может установить соединение с сервером по адресу wss: //domain.com

Это воспроизводимо, если вы переходите на https://websocket.org/echo.html и замените местоположение на wss: //domain.com в chrome, это работает, и если это не так.

Я не могу понять, почему?

Использование Nodejs и запускна героку, за облаком.

Редактировать

Так что я исправил подсказку Брэда.

Я использую https://github.com/websockets/ws/blob/master/doc/ws.md для веб-сокета.у него есть опция perMessageDeflate.

Теперь его отключение заставляет его работать в FF.

Не уверен Что происходит, но это исправило.(я полагаю, что эта библиотека также на стороне клиента?)

Единственное, что я нашел на MDN, это

Gecko 8.0 Начиная с Gecko 8.0 (Firefox 8.0 / Thunderbird 8.0 /SeaMonkey 2.5), расширение deflate-stream для протокола WebSocket было отключено, поскольку оно было исключено из черновиков спецификаций.Это устраняет несовместимости с некоторыми сайтами.

1 Ответ

0 голосов
/ 24 сентября 2018

Вы получаете 400 неверных запросов для пользователей Firefox.Не сразу понятно почему.Данные запроса между Firefox и Chrome практически идентичны.Единственное отличие, которое я вижу, состоит в том, что Chrome имеет больше для этого заголовка:

Sec-Websocket-Extensions: permessage-deflate; client_max_window_bits=10; server_no_context_takeover; client_no_context_takeover; server_max_window_bits=10.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...