Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Elastic Beanstalk stripping Sec-WebSocket-Accept header

I'm trying to get a .NET Core application running on elastic beanstalk to receive websockets connections from javascript in the browser.

When I test my client and server outside AWS on my local machine I am able to establish a websocket connection betwen the two. But when I deploy the server to elastic beanstalk I get the following error

WebSocket connection to 'ws://52.62.253.144/' failed: Error during WebSocket handshake: 'Sec-WebSocket-Accept' header is missing

The server replies with a 101 Switching Protocols, so I know the server is trying to establish the connection, but the Sec-WebSocket-Accept header is missing. When testing locally, this header is present.

Is it possible elastic beanstalk is stripping the Sec-WebSocket-Accept from the response? It is currently configured in a 'Single Instance' scenario, not autoscaling.

Thanks in advance

like image 257
ChrisBellew Avatar asked Oct 22 '16 02:10

ChrisBellew


1 Answers

Same thing happened to me in a Tomcat/Java project, it was finally fixed by switching the ELB protocols to TCP/SSL. The official documentation shows you how to switch them, can you try this and let me know.

like image 165
imTachu Avatar answered Oct 13 '22 10:10

imTachu