fix: correct import + ping pong route

This commit is contained in:
2025-04-18 13:44:33 +02:00
parent dd891b65f6
commit 4afc73fb2a

36
main.go
View File

@ -7,27 +7,42 @@ import (
"os" "os"
"os/signal" "os/signal"
"syscall" "syscall"
"time"
"github.com/LandaMm/hsp-go/server" "github.com/LandaMm/hsp-go/hsp"
"github.com/LandaMm/hsp-go/hsp/client"
"github.com/LandaMm/hsp-go/hsp/server"
) )
func FileUploadRoute(req *server.Request) *server.Response { func PingPongRoute(req *hsp.Request) *hsp.Response {
log.Println("Ping pong request:", req)
text, err := req.ExtractText()
if err != nil {
return hsp.NewStatusResponse(hsp.STATUS_INTERNALERR)
}
log.Println("Received text from req:", text)
return hsp.NewStatusResponse(hsp.STATUS_SUCCESS)
}
func FileUploadRoute(req *hsp.Request) *hsp.Response {
log.Println("[MAIN] File Upload request:", req) log.Println("[MAIN] File Upload request:", req)
bytes, err := req.ExtractBytes() bytes, err := req.ExtractBytes()
if err != nil { if err != nil {
return server.NewStatusResponse(server.STATUS_INTERNALERR) return hsp.NewStatusResponse(hsp.STATUS_INTERNALERR)
} }
filename := "received.bin" filename := "received.bin"
err = os.WriteFile(filename, bytes, 0644) err = os.WriteFile(filename, bytes, 0644)
if err != nil { if err != nil {
log.Fatalln("Failed to write packet payload into a file:", err) log.Fatalln("Failed to write packet payload into a file:", err)
return server.NewStatusResponse(server.STATUS_INTERNALERR) return hsp.NewStatusResponse(hsp.STATUS_INTERNALERR)
} }
log.Println("Received new request from client:", req.Conn().RemoteAddr().String()) log.Println("Received new request from client:", req.Conn().RemoteAddr().String())
res := server.NewTextResponse("Hello, World!") res := hsp.NewTextResponse("Hello, World!")
res.AddHeader("filename", filename) res.AddHeader("filename", filename)
return res return res
@ -42,6 +57,7 @@ func main() {
router := server.NewRouter() router := server.NewRouter()
router.AddRoute("/file-upload", FileUploadRoute) router.AddRoute("/file-upload", FileUploadRoute)
router.AddRoute("/ping-pong", PingPongRoute)
srv.SetListener(handler) srv.SetListener(handler)
@ -68,6 +84,16 @@ func main() {
signal.Notify(sigs, syscall.SIGINT, syscall.SIGTERM) signal.Notify(sigs, syscall.SIGINT, syscall.SIGTERM)
go func() {
time.Sleep(2 * time.Second)
c := client.NewClient()
rsp, err := c.SendText("localhost:3000/ping-pong", "Hello, guys!")
if err != nil {
log.Fatalf("Failed to received response from ping-pong: %s\n", err)
}
log.Println("[CLIENT] received response from remote server:", rsp)
}()
if err := srv.Start(); err != nil { if err := srv.Start(); err != nil {
log.Fatalln("Failed to start server") log.Fatalln("Failed to start server")
} }