feat: inspect data format of ping-pong route + return json!
This commit is contained in:
46
main.go
46
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)
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user