(url: &str)
| 398 | } |
| 399 | |
| 400 | fn upstream_websocket_origin(url: &str) -> Option<String> { |
| 401 | let (scheme, rest) = url |
| 402 | .strip_prefix("ws://") |
| 403 | .map(|rest| ("http", rest)) |
| 404 | .or_else(|| url.strip_prefix("wss://").map(|rest| ("https", rest)))?; |
| 405 | let authority = rest.split(['/', '?', '#']).next()?; |
| 406 | (!authority.is_empty()).then(|| format!("{scheme}://{authority}")) |
| 407 | } |
| 408 | |
| 409 | fn to_upstream_message(message: Message) -> Option<UpstreamMessage> { |
| 410 | match message { |
no test coverage detected