lib::error_code validate_handshake(request_type const & r) const { if (r.get_method() != "GET") { return make_error_code(error::invalid_http_method); } if (r.get_version() != "HTTP/1.1") { return make_error_code(error::invalid_http_version); } // required headers // Host is required by HTTP/1.1 // Connection is required by is_websocket_handshake // Upgrade is required by is_websocket_handshake if (r.get_header("Sec-WebSocket-Key") == "") { return make_error_code(error::missing_required_header); } return lib::error_code(); }
lib::error_code validate_handshake(request_type const & r) const { if (r.get_method() != "get") { return make_error_code(error::invalid_http_method); } if (r.get_version() != "http/1.1") { return make_error_code(error::invalid_http_version); } // required headers // host is required by http/1.1 // connection is required by is_websocket_handshake // upgrade is required by is_websocket_handshake if (r.get_header("sec-websocket-key") == "") { return make_error_code(error::missing_required_header); } return lib::error_code(); }