From 23d80628368da01a7efed5452ab5f6edd8717293 Mon Sep 17 00:00:00 2001 From: Roman Glushko Date: Sun, 18 Feb 2024 18:58:08 +0200 Subject: [PATCH] #14: Used JSON-based messages --- pkg/api/http/config.go | 2 +- pkg/api/http/handlers.go | 15 +++++++-------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/pkg/api/http/config.go b/pkg/api/http/config.go index 8e261098..e9098266 100644 --- a/pkg/api/http/config.go +++ b/pkg/api/http/config.go @@ -41,7 +41,7 @@ func (cfg *ServerConfig) ToServer() *fiber.App { // More configs are listed on https://docs.gofiber.io/api/fiber // TODO: Consider alternative JSON marshallers that provides better performance over the standard marshaller serverConfig := fiber.Config{ - AppName: "glide", + AppName: "Glide", DisableDefaultDate: true, ServerHeader: fmt.Sprintf("glide/%v", version.Version), StreamRequestBody: true, diff --git a/pkg/api/http/handlers.go b/pkg/api/http/handlers.go index cbf3dbef..e9bab3f9 100644 --- a/pkg/api/http/handlers.go +++ b/pkg/api/http/handlers.go @@ -104,26 +104,25 @@ func LangStreamRouterValidator(routerManager *routers.RouterManager) Handler { func LangStreamChatHandler() Handler { // TODO: expose websocket connection configs https://github.com/gofiber/contrib/tree/main/websocket return websocket.New(func(c *websocket.Conn) { - log.Println(c.Params("router")) + routerID := c.Params("router") + log.Println("routerID: ", routerID) // websocket.Conn bindings https://pkg.go.dev/github.com/fasthttp/websocket?tab=doc#pkg-index var ( - mt int - msg []byte - err error + err error + chatRequest schemas.UnifiedChatRequest ) for { - if mt, msg, err = c.ReadMessage(); err != nil { + if err = c.ReadJSON(&chatRequest); err != nil { log.Println("read:", err) break } - log.Printf("msg type: %s", mt) - log.Printf("recv: %s", msg) + log.Printf("recv req: %s", chatRequest.Message.Content) - if err = c.WriteMessage(mt, msg); err != nil { + if err = c.WriteJSON(chatRequest); err != nil { log.Println("write:", err) break }