fix: Add GET_RECIPE and SAVE_RECIPE handlers to WebSocketServer

- 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 <noreply@anthropic.com>
This commit is contained in:
2025-11-25 21:24:20 +09:00
parent d6678422a7
commit 484da44103

View File

@@ -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)
{