Examines the method and request headers in msg
and determines whether msg
contains a valid handshake request.
If origin
is non-null, then only requests containing a matching "Origin" header will be
accepted. If protocols
is non-null, then only requests containing a compatible
"Sec-WebSocket-Protocols" header will be accepted. If supported_extensions
is non-null,
then only requests containing valid supported extensions in "Sec-WebSocket-Extensions" header will be accepted.
Normally [func@websocket_server_process_handshake] will take care of this for you, and if you use [[email protected]_websocket_handler] to handle accepting WebSocket connections, it will call that for you. However, this function may be useful if you need to perform more complicated validation; eg, accepting multiple different Origins, or handling different protocols depending on the path.
msg |
ServerMessage containing the client side of a WebSocket handshake |
origin |
expected Origin header |
protocols |
allowed WebSocket protocols. |
supported_extensions |
list of supported extension types |
true if |