[router] Add /list_workers endpoint to router (#6366)

This commit is contained in:
Zilin Zhu
2025-05-18 00:49:02 +08:00
committed by GitHub
parent e9ef39d2e9
commit e3bed74afb

View File

@@ -132,6 +132,13 @@ async fn add_worker(
}
}
#[get("/list_workers")]
async fn list_workers(data: web::Data<AppState>) -> impl Responder {
let workers = data.router.get_worker_urls();
let worker_list = workers.read().unwrap().clone();
HttpResponse::Ok().json(serde_json::json!({ "urls": worker_list }))
}
#[post("/remove_worker")]
async fn remove_worker(
query: web::Query<HashMap<String, String>>,
@@ -253,6 +260,7 @@ pub async fn startup(config: ServerConfig) -> std::io::Result<()> {
.service(get_server_info)
.service(add_worker)
.service(remove_worker)
.service(list_workers)
// Default handler for unmatched routes.
.default_service(web::route().to(sink_handler))
})