@Override protected boolean doValidate(HttpRequestMessage request, final boolean isPostMethodAllowed) { return super.doValidate(request, isPostMethodAllowed); }
/** * Facade method to validate an HttpMessageRequest. * * @param request the request to validate * @return true iff the appropriate handshake for websocket protocol is contained * within the provided request. */ public boolean validate(HttpRequestMessage request, boolean isPostMethodAllowed) { WebSocketWireProtocol wireProtocolVersion = guessWireProtocolVersion(request); if ( wireProtocolVersion == null ) { return false; } final WsHandshakeValidator validator = handshakeValidatorsByWireProtocolVersion.get(wireProtocolVersion); return validator != null && validator.doValidate(request, isPostMethodAllowed); }
@Override protected boolean doValidate(HttpRequestMessage request, final boolean isPostMethodAllowed) { return super.doValidate(request, isPostMethodAllowed) && requireHeader(request, SEC_WEB_SOCKET_KEY1) && requireHeader(request, SEC_WEB_SOCKET_KEY2); // all other handshake elements are optional and not verifiable. }
@Override protected boolean doValidate(HttpRequestMessage request, final boolean isPostMethodAllowed) { boolean ok = super.doValidate(request, isPostMethodAllowed); if ( !ok ) return false; ok = requireHeader(request, SEC_WEB_SOCKET_VERSION, getExpectedWebSocketVersion()); if ( !ok ) return false; ok = requireHeader(request, SEC_WEB_SOCKET_KEY); return ok && validateWebSocketKey(request.getHeader(SEC_WEB_SOCKET_KEY)); // all other handshake elements are optional and not verifiable. }