From 240f4fb3e7c2cde01c275e1b847012b5dabe9253 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Z=C3=BCrcher?= Date: Sun, 27 Apr 2025 16:04:33 +0200 Subject: [PATCH] add parse functons with io reader --- request.go | 21 ++++++++++++++++++++- response.go | 9 +++++++-- 2 files changed, 27 insertions(+), 3 deletions(-) diff --git a/request.go b/request.go index a4de1e4..3e82fc8 100644 --- a/request.go +++ b/request.go @@ -1,7 +1,26 @@ package tecaminodbmjson_data -import "github.com/tecamino/tecamino-json_data/models" +import ( + "encoding/json" + "io" + + "github.com/tecamino/tecamino-json_data/models" +) func NewRequest() *models.Request { return &models.Request{} } + +func ParseRequest(body io.ReadCloser) (*models.Request, error) { + b, err := io.ReadAll(body) + if err != nil { + return nil, err + } + r := models.Request{} + + err = json.Unmarshal(b, &r) + if err != nil { + return nil, err + } + return &r, nil +} diff --git a/response.go b/response.go index e5d22d1..3a64fdd 100644 --- a/response.go +++ b/response.go @@ -2,6 +2,7 @@ package tecaminodbmjson_data import ( "encoding/json" + "io" "github.com/tecamino/tecamino-json_data/models" ) @@ -10,10 +11,14 @@ func NewResponse() *models.Response { return &models.Response{} } -func ParseResponse(b []byte) (*models.Response, error) { +func ParseResponse(body io.ReadCloser) (*models.Response, error) { + b, err := io.ReadAll(body) + if err != nil { + return nil, err + } r := models.Response{} - err := json.Unmarshal(b, &r) + err = json.Unmarshal(b, &r) if err != nil { return nil, err }