2 Commits

Author SHA1 Message Date
Bastian de Byl
d6c3570ae7 clarified function POST and PUT usage with io.Reader 2023-02-26 02:24:18 -05:00
Bastian de Byl
6ee3c99241 added Put method 2023-02-26 01:57:05 -05:00

View File

@@ -4,6 +4,7 @@ import (
"bytes"
"encoding/json"
"fmt"
"io"
"net/http"
)
@@ -36,7 +37,7 @@ func Get(uri string, authName string, authValue string, queries map[string]strin
return response, nil
}
func Post(uri string, authName string, authValue string, data any) (*http.Response, error) {
func Post(uri string, authName string, authValue string, data io.Reader) (*http.Response, error) {
jsonBytes, err := json.Marshal(data)
if err != nil {
return nil, err
@@ -60,3 +61,28 @@ func Post(uri string, authName string, authValue string, data any) (*http.Respon
return response, nil
}
func Put(uri string, authName string, authValue string, data io.Reader) (*http.Response, error) {
jsonBytes, err := json.Marshal(data)
if err != nil {
return nil, err
}
body := bytes.NewBuffer(jsonBytes)
request, err := http.NewRequest("PUT", uri, body)
if err != nil {
return nil, err
}
client := &http.Client{}
request.Header.Set("Content-Type", "application/json")
request.Header.Set("Authorization", fmt.Sprintf("%s %s", authName, authValue))
response, err := client.Do(request)
if err != nil {
return nil, err
}
return response, nil
}