From 119e54e4590974a0a6aa0efecaac9a7545caf98d Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Sat, 22 Mar 2025 12:51:09 +0800 Subject: fedauth: Use NewRequestWithContext --- fedauth.go | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/fedauth.go b/fedauth.go index 5957519..3bd25d6 100644 --- a/fedauth.go +++ b/fedauth.go @@ -17,27 +17,29 @@ import ( func fedauth(ctx context.Context, userID int, service, remoteUsername, pubkey string) (bool, error) { var err error - var resp *http.Response + matched := false usernameEscaped := url.PathEscape(remoteUsername) + + var req *http.Request switch service { case "sr.ht": - resp, err = http.Get("https://meta.sr.ht/~" + usernameEscaped + ".keys") + req, err = http.NewRequestWithContext(ctx, http.MethodGet, "https://meta.sr.ht/~" + usernameEscaped + ".keys", nil) case "github": - resp, err = http.Get("https://github.com/" + usernameEscaped + ".keys") + req, err = http.NewRequestWithContext(ctx, http.MethodGet, "https://github.com/" + usernameEscaped + ".keys", nil) case "codeberg": - resp, err = http.Get("https://codeberg.org/" + usernameEscaped + ".keys") + req, err = http.NewRequestWithContext(ctx, http.MethodGet, "https://codeberg.org/" + usernameEscaped + ".keys", nil) case "tangled": - resp, err = http.Get("https://tangled.sh/keys/" + usernameEscaped) + req, err = http.NewRequestWithContext(ctx, http.MethodGet, "https://tangled.sh/keys/" + usernameEscaped, nil) // TODO: Don't rely on one webview default: return false, errors.New("unknown federated service") } - if err != nil { return false, err } + resp, err := http.DefaultClient.Do(req) defer func() { _ = resp.Body.Close() }() -- cgit v1.2.3