@Override protected void doSessionOpened(HttpAcceptSession session) throws Exception { super.doSessionOpened(session); if (!super.doUpgradeEligibilityChecks(session)) { // prevent processing of WebSocket handshake for failed upgrades (e.g. path not found). return; } // Verify header requirements for paranoia. String upgrade = session.getReadHeader(HEADER_UPGRADE); if (upgrade != null && WEB_SOCKET.equalsIgnoreCase(upgrade) && session.getReadHeader(HEADER_WEBSOCKET_KEY) != null) { // do native upgrade for HyBi draft versions 8+ doUpgrade(session); } else { doUpgradeFailure(session); } }
@Override protected void doSessionOpened(HttpAcceptSession session) throws Exception { super.doSessionOpened(session); if (!super.doUpgradeEligibilityChecks(session)) { // prevent processing of WebSocket handshake for failed upgrades (e.g. path not found). return; } String upgrade = session.getReadHeader(HEADER_UPGRADE); // Handle the case where the Upgrade header is not present as well if (upgrade == null) { return; } if (WEB_SOCKET.equalsIgnoreCase(upgrade) && session.getReadHeader(HEADER_WEBSOCKET_KEY) == null && session.getReadHeader(HEADER_WEBSOCKET_KEY1) != null) { // We're going to assume you are waiting for the extra "key3" bytes in Hixie Draft 76 } else { doUpgradeFailure(session); } }
@Override protected void doSessionOpened(HttpAcceptSession session) throws Exception { super.doSessionOpened(session); if (!super.doUpgradeEligibilityChecks(session)) { // prevent processing of WebSocket handshake for failed upgrades (e.g. path not found). return; } String upgrade = session.getReadHeader(HEADER_UPGRADE); if ( upgrade != null && WEB_SOCKET.equalsIgnoreCase(upgrade) && session.getReadHeader(HEADER_WEBSOCKET_KEY) == null && session.getReadHeader(HEADER_WEBSOCKET_KEY1) == null) { // The absence of any sec- headers indicates that the UA speaks // WebSocket protocol version 75 doUpgrade75(session); } else { doUpgradeFailure(session); } }
@Override protected void doSessionOpened(HttpAcceptSession session) throws Exception { super.doSessionOpened(session);