diff options
author | Liam Perlaki <lperlaki@icloud.com> | 2021-01-03 21:31:52 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-03 21:31:52 +0100 |
commit | 1a2e7741c33490d2a91147966019853c6b1d6a48 (patch) | |
tree | e9e4a645e05d4df780c8f65ff29bb5f7f8d6f7ae /runtime/inspector.rs | |
parent | 0a509152d16e42f3957a9b2286d5877321d0e331 (diff) |
fix(inspector): add back list endpoint (#8894)
This commit adds back "/json/list" endpoint to
inspector server which was erroneously removed
during server rewrite.
Co-authored-by: Ben Noordhuis <info@bnoordhuis.nl>
Diffstat (limited to 'runtime/inspector.rs')
-rw-r--r-- | runtime/inspector.rs | 34 |
1 files changed, 19 insertions, 15 deletions
diff --git a/runtime/inspector.rs b/runtime/inspector.rs index 58df05c54..befaaebee 100644 --- a/runtime/inspector.rs +++ b/runtime/inspector.rs @@ -182,20 +182,21 @@ fn handle_ws_request( .status(http::StatusCode::BAD_REQUEST) .body("Not a valid Websocket Request".into()), }); - tokio::task::spawn_local(async move { - let upgraded = body.on_upgrade().await.unwrap(); - let websocket = tokio_tungstenite::WebSocketStream::from_raw_socket( - upgraded, - tungstenite::protocol::Role::Server, - None, - ) - .await; - let (proxy, pump) = create_websocket_proxy(websocket); - - let _ = new_websocket_tx.unbounded_send(proxy); - pump.await; - }); + if resp.is_ok() { + tokio::task::spawn_local(async move { + let upgraded = body.on_upgrade().await.unwrap(); + let websocket = tokio_tungstenite::WebSocketStream::from_raw_socket( + upgraded, + tungstenite::protocol::Role::Server, + None, + ) + .await; + let (proxy, pump) = create_websocket_proxy(websocket); + let _ = new_websocket_tx.unbounded_send(proxy); + pump.await; + }); + } resp } else { http::Response::builder() @@ -275,11 +276,14 @@ async fn server( (&http::Method::GET, path) if path.starts_with("/ws/") => { handle_ws_request(req, inspector_map.clone()) } + (&http::Method::GET, "/json/version") => { + handle_json_version_request(json_version_response.clone()) + } (&http::Method::GET, "/json") => { handle_json_request(inspector_map.clone()) } - (&http::Method::GET, "/json/version") => { - handle_json_version_request(json_version_response.clone()) + (&http::Method::GET, "/json/list") => { + handle_json_request(inspector_map.clone()) } _ => http::Response::builder() .status(http::StatusCode::NOT_FOUND) |