From b954d02f5db88aefcb016591f7de4023011b903c Mon Sep 17 00:00:00 2001 From: Hedy Li Date: Fri, 9 Jul 2021 17:04:00 +0800 Subject: [PATCH] fix redirects, usage indent, and go fmt --- sparte.go | 33 ++++++++++++++++++++------------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/sparte.go b/sparte.go index 0420a50..02d0f0e 100644 --- a/sparte.go +++ b/sparte.go @@ -14,21 +14,29 @@ import ( // SpartanURL parses u and calls SpartanParsedURL with the parsed url func SpartanURL(u, input string) bool { parsed, err := url.Parse(u) - if parsed.Host == "" { - parsed, err = url.Parse("spartan://" + u) - } if err != nil { fmt.Println("invalid url") + fmt.Println(err.Error()) return false } + if parsed.Host == "" { + parsed, err = url.Parse("spartan://" + u) + // this is repeated, ugh! + if err != nil { + fmt.Println("invalid url") + fmt.Println(err.Error()) + return false + } + } if parsed.Scheme != "spartan" { fmt.Println("Unsupported scheme") + return false } - return SpartanParsedURL(*parsed, input) + return SpartanParsedURL(parsed, input) } // SpartanParsedURL fetches u and displays the page -func SpartanParsedURL(u url.URL, input string) bool { +func SpartanParsedURL(u *url.URL, input string) bool { host := u.Host if u.Port() == "" { host += ":300" @@ -62,7 +70,7 @@ func SpartanParsedURL(u url.URL, input string) bool { fmt.Println("invalid status code:" + statusParts[0]) return false } - meta := statusParts[1] + meta := strings.Trim(statusParts[1], "\r\n") // Handle status switch status { @@ -79,8 +87,7 @@ func SpartanParsedURL(u url.URL, input string) bool { body := string(bodyBytes) fmt.Print(body) case 3: - fmt.Println(u.Host + meta) - SpartanURL("spartan://" + u.Host + meta, "") + SpartanURL("spartan://"+host+meta, "") case 4: fmt.Println("Error: " + meta) case 5: @@ -92,11 +99,11 @@ func SpartanParsedURL(u url.URL, input string) bool { func Usage() { fmt.Fprintln(os.Stderr, ` - Usage: sparte [--help] [URL] [-i INPUT] [-f FILE] +Usage: sparte [--help] [URL] [-i INPUT] [-f FILE] - --help usage - -i send INPUT to URL - -f send contents of FILE as input to UR + --help usage + -i send INPUT to URL + -f send contents of FILE as input to UR `) return @@ -116,7 +123,7 @@ func main() { return } if arg == "-i" || arg == "-f" { - if len(args) < i+2 || (i==0 && len(args) < i+3) { + if len(args) < i+2 || (i == 0 && len(args) < i+3) { fmt.Println("input arument or URL missing") return }