Заголовок "Соединение" WebSocket отсутствует

Я пытаюсь подключиться к Intersystems Cache CSP Websocket со следующей строки от клиента:

var ws = new WebSocket("ws://" + window.location.host + "/path/ClassName.cls");

И я получаю эту ошибку в консоли Chrome:

WebSocket connection to 'ws://<server address>' failed: Error during WebSocket handshake: 'Connection' header is missing

Заголовки запроса:

Accept-Encoding:gzip, deflate, sdch
Accept-Language:en-US,en;q=0.8,he;q=0.6
Cache-Control:no-cache
Connection:Upgrade
Cookie:CSPWSERVERID=Cache for Windows (x86-64) 2013.1.1 (Build 501_1_13062) Sun Aug 11 2013 23:20:33 EDT
Host:<host-ip>
Origin:http://<host-ip>
Pragma:no-cache
Sec-WebSocket-Extensions:permessage-deflate; client_max_window_bits
Sec-WebSocket-Key:<the key>
Sec-WebSocket-Version:13
Upgrade:websocket
User-Agent:Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.125 Safari/537.36

И заголовки ответа:

Date:Tue, 04 Aug 2015 11:45:54 GMT
Sec-WebSocket-Accept:<some key>
Sec-WebSocket-Protocol:chat
Server:Microsoft-IIS/7.5
Transfer-Encoding:chunked
Upgrade:websocket
X-Powered-By:ASP.NET

Сервер использует IIS 7.5, который технически не поддерживает WebSocket, но кажется, что все заголовки websocket действительно установлены, кроме одного: "Соединение": "Обновление".

Есть ли способ вставить заголовок "соединения" в ответ на рукопожатие? Есть ли какая-то конфигурация клиента, которая может игнорировать отсутствующий заголовок?

Благодарю.

1 ответ

К сожалению, для поддержки WebSockets вам нужны IIS 8 + Windows 8 и Windows Server 2012

http://docs.intersystems.com/cache20152/csp/docbook/DocBook.UI.Page.cls?KEY=GCGI_oper_config#GCGI_websockets

Другие вопросы по тегам