From 27ea758538aecf120a6945a15c05f44bb11c180d Mon Sep 17 00:00:00 2001 From: LandaMm Date: Fri, 18 Apr 2025 14:50:27 +0200 Subject: [PATCH] feat: inspect data format of ping-pong route + return json! --- main.go | 46 +++++++++++++++++++++++++++++++++++++--------- 1 file changed, 37 insertions(+), 9 deletions(-) diff --git a/main.go b/main.go index 396f3d0..eefef76 100644 --- a/main.go +++ b/main.go @@ -1,6 +1,7 @@ package main import ( + "encoding/json" "fmt" "log" "net" @@ -15,15 +16,32 @@ import ( ) func PingPongRoute(req *hsp.Request) *hsp.Response { - log.Println("Ping pong request:", req) + log.Println("Ping pong request:", req.GetRawPacket()) + df, err := req.GetDataFormat() + if err != nil { + return hsp.NewErrorResponse(err) + } + + log.Println("Data format of the request:", df) + text, err := req.ExtractText() if err != nil { - return hsp.NewStatusResponse(hsp.STATUS_INTERNALERR) + return hsp.NewErrorResponse(err) } log.Println("Received text from req:", text) - return hsp.NewStatusResponse(hsp.STATUS_SUCCESS) + // return hsp.NewStatusResponse(hsp.STATUS_SUCCESS) + res, err := hsp.NewJsonResponse(map[string]any{ + "success": true, + "message": text, + }) + + if err != nil { + return hsp.NewErrorResponse(err) + } + + return res } func FileUploadRoute(req *hsp.Request) *hsp.Response { @@ -49,8 +67,12 @@ func FileUploadRoute(req *hsp.Request) *hsp.Response { } func main() { - srv := server.NewServer("localhost:3000") - fmt.Printf("Server created on address: %s\n", srv.Addr) + addr, err := hsp.ParseAddress("127.0.0.1") + if err != nil { + panic(err) + } + srv := server.NewServer(*addr) + fmt.Printf("Server created on address: %s\n", srv.Addr.String()) handler := make(chan net.Conn, 1) @@ -85,16 +107,22 @@ func main() { signal.Notify(sigs, syscall.SIGINT, syscall.SIGTERM) go func() { - time.Sleep(2 * time.Second) + time.Sleep(3 * time.Second) c := client.NewClient() - rsp, err := c.SendText("localhost:3000/ping-pong", "Hello, guys!") + rsp, err := c.SendText("localhost/ping-pong", "Hello, guys!") if err != nil { - log.Fatalf("Failed to received response from ping-pong: %s\n", err) + log.Fatalf("[CLIENT] Failed to received response from ping-pong: %s\n", err) } log.Println("[CLIENT] received response from remote server:", rsp) + bts, err := json.Marshal(rsp) + if err != nil { + log.Fatalln("[CLIENT] Failed to serialize response from server") + } + + log.Println("[CLIENT] Serialized response from server:", string(bts)) }() if err := srv.Start(); err != nil { - log.Fatalln("Failed to start server") + log.Fatalln("Failed to start server:", err) } }