From ab116f62282cb201ba2903d24bbce9eb03ee3e38 Mon Sep 17 00:00:00 2001 From: Alex Mayer Date: Thu, 20 Jun 2019 00:26:02 -0400 Subject: Consolidate User Exists Check Into fetchKeys() --- main.go | 25 ++++--------------------- 1 file changed, 4 insertions(+), 21 deletions(-) (limited to 'main.go') diff --git a/main.go b/main.go index ff48177..f214a09 100644 --- a/main.go +++ b/main.go @@ -25,6 +25,10 @@ func fetchKeys(username string) (string, error) { } defer resp.Body.Close() + if resp.StatusCode == http.StatusNotFound { + return "", fmt.Errorf("%s is an invalid user", username) + } + if resp.StatusCode != http.StatusOK { return "", fmt.Errorf("Expected http 200 but got %d instead", resp.StatusCode) } @@ -37,33 +41,12 @@ func fetchKeys(username string) (string, error) { return string(bodyBytes), nil } -func checkUsername(username string) error { - url := fmt.Sprintf("https://github.com/%s.keys", username) - response, err := http.Get(url) - if err != nil { - return err - } - - if response.StatusCode != http.StatusOK { - return fmt.Errorf("%s is an invalid user", username) - } - - return nil -} - func main() { username, err := parseArgs() if err != nil { log.Fatal(err) } - log.Printf("Checking for GitHub user %s", username) - err = checkUsername(username) - if err != nil { - log.Fatal(err) - } - log.Printf("Found valid user %s", username) - log.Printf("Fetching keys for user %s", username) keys, err := fetchKeys(username) if err != nil { -- cgit v1.2.3