From 484da441038e5b05c28cadcd1d92f154c6705d64 Mon Sep 17 00:00:00 2001 From: arDTDev Date: Tue, 25 Nov 2025 21:24:20 +0900 Subject: [PATCH] fix: Add GET_RECIPE and SAVE_RECIPE handlers to WebSocketServer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Added GET_RECIPE message handler to load recipe data by title - Added SAVE_RECIPE message handler to save recipe changes - Fixes "Recipe fetch timeout" error in browser development mode - WebSocket mode now fully supports recipe loading and saving 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- Handler/Project/WebUI/WebSocketServer.cs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/Handler/Project/WebUI/WebSocketServer.cs b/Handler/Project/WebUI/WebSocketServer.cs index 765013e..a2e1e12 100644 --- a/Handler/Project/WebUI/WebSocketServer.cs +++ b/Handler/Project/WebUI/WebSocketServer.cs @@ -195,6 +195,23 @@ namespace Project.WebUI var response = new { type = "RECIPE_DELETED", data = Newtonsoft.Json.JsonConvert.DeserializeObject(resultJson) }; await Send(socket, Newtonsoft.Json.JsonConvert.SerializeObject(response)); } + else if (type == "GET_RECIPE") + { + string recipeTitle = json.recipeTitle; + var bridge = new MachineBridge(_mainForm); + string recipeJson = bridge.GetRecipe(recipeTitle); + var response = new { type = "RECIPE_DATA", data = Newtonsoft.Json.JsonConvert.DeserializeObject(recipeJson) }; + await Send(socket, Newtonsoft.Json.JsonConvert.SerializeObject(response)); + } + else if (type == "SAVE_RECIPE") + { + string recipeTitle = json.recipeTitle; + string recipeData = Newtonsoft.Json.JsonConvert.SerializeObject(json.recipeData); + var bridge = new MachineBridge(_mainForm); + string resultJson = bridge.SaveRecipe(recipeTitle, recipeData); + var response = new { type = "RECIPE_SAVED", data = Newtonsoft.Json.JsonConvert.DeserializeObject(resultJson) }; + await Send(socket, Newtonsoft.Json.JsonConvert.SerializeObject(response)); + } } catch (Exception ex) {