sig-auth/client/register.go

44 lines
657 B
Go
Raw Normal View History

2025-02-20 20:33:59 -05:00
package client
import (
"bytes"
"encoding/json"
"io"
"net/http"
2025-02-20 21:49:05 -05:00
"net/url"
2025-02-20 20:33:59 -05:00
"crispbyte.dev/sig-auth/server"
)
func RegisterKey(baseUrl *url.URL, key string, userId string) (string, error) {
2025-02-20 20:33:59 -05:00
request := server.RegisterRequest{
UserId: userId,
Key: key,
}
json_data, _ := json.Marshal(request)
2025-02-20 21:49:05 -05:00
registerUrl := baseUrl.JoinPath("register")
2025-02-20 20:33:59 -05:00
resp, err := http.DefaultClient.Post(
2025-02-20 21:49:05 -05:00
registerUrl.String(),
2025-02-20 20:33:59 -05:00
"application/json",
bytes.NewBuffer(json_data))
if err != nil {
return "", err
2025-02-20 20:33:59 -05:00
}
defer resp.Body.Close()
out, err := io.ReadAll(resp.Body)
if err != nil {
return "", err
2025-02-20 20:33:59 -05:00
}
keyId := string(out[:])
2025-02-20 20:33:59 -05:00
return keyId, nil
2025-02-20 20:33:59 -05:00
}