diff --git a/hsp-go b/hsp-go deleted file mode 100755 index 2f47dec..0000000 Binary files a/hsp-go and /dev/null differ diff --git a/main.go b/main.go index 52f1dc1..100c1b7 100644 --- a/main.go +++ b/main.go @@ -15,6 +15,7 @@ func FileUploadRoute(req *server.Request) *server.Response { log.Println("[MAIN] File Upload request:", req) bytes, err := req.ExtractBytes() if err != nil { + log.Fatalln("Failed to extract bytes from payload:", err) return server.NewStatusResponse(server.STATUS_INTERNALERR) } diff --git a/received.bin b/received.bin deleted file mode 100644 index d7a7acf..0000000 --- a/received.bin +++ /dev/null @@ -1,2 +0,0 @@ -Hello, everyone! -I'm a txt file diff --git a/server/response.go b/server/response.go index d40ce10..6f932a1 100644 --- a/server/response.go +++ b/server/response.go @@ -11,17 +11,17 @@ import ( type Response struct { StatusCode int - Format DataFormat - Headers map[string]string - Payload []byte + Format DataFormat + Headers map[string]string + Payload []byte } func NewStatusResponse(status int) *Response { return &Response{ StatusCode: status, - Headers: make(map[string]string), + Headers: make(map[string]string), Format: DataFormat{ - Format: DF_BYTES, + Format: DF_BYTES, Encoding: "", }, Payload: make([]byte, 0), @@ -31,9 +31,9 @@ func NewStatusResponse(status int) *Response { func NewTextResponse(text string) *Response { return &Response{ StatusCode: STATUS_SUCCESS, - Headers: make(map[string]string), + Headers: make(map[string]string), Format: DataFormat{ - Format: DF_TEXT, + Format: DF_TEXT, Encoding: E_UTF8, }, Payload: []byte(text), @@ -48,9 +48,9 @@ func NewJsonResponse(data map[string]string) (*Response, error) { return &Response{ StatusCode: STATUS_SUCCESS, - Headers: make(map[string]string), + Headers: make(map[string]string), Format: DataFormat{ - Format: DF_JSON, + Format: DF_JSON, Encoding: E_UTF8, }, Payload: jsonBytes, @@ -62,7 +62,11 @@ func (res *Response) ToPacket() *Packet { maps.Copy(headers, res.Headers) - headers[H_DATA_FORMAT] = fmt.Sprintf("%s:%s", res.Format.Format, res.Format.Encoding) + if res.Format.Format == DF_BYTES { + headers[H_DATA_FORMAT] = DF_BYTES + } else { + headers[H_DATA_FORMAT] = fmt.Sprintf("%s:%s", res.Format.Format, res.Format.Encoding) + } headers[H_STATUS] = strconv.Itoa(res.StatusCode) return BuildPacket(headers, res.Payload) @@ -87,4 +91,3 @@ func (res *Response) Write(p []byte) (int, error) { return n, err } -