Fix “unsupported protocol scheme” issue in golang

When using “http” package in golang, you should use the full domain name, For example:

package main
import (
    "net/http"
    "fmt"
    "io/ioutil"
    "os"
)

func main() {
    resp, err := http.Get("www.google.com")
    if err != nil {
        fmt.Println(err)
        os.Exit(1)
    }

    text, err := ioutil.ReadAll(resp.Body)
    if err != nil {
        fmt.Println(err)
        os.Exit(1)
    }

    fmt.Println(string(text))
}

Executing it, the error will be:

Get www.google.com: unsupported protocol scheme ""

Add “http://” before “www.google.com“, then executing it. The result is OK:

<!doctype html><html itemscope="" itemtype="http://schema.org/WebPage" lang="en"><head><meta co.... 

P.S., the full code is here.

14 thoughts on “Fix “unsupported protocol scheme” issue in golang”


    1. package main
      import (
      "net/http"
      "fmt"
      "io/ioutil"
      "os"
      )

      func main() {
      resp, err := http.Get("http://www.google.com")
      if err != nil {
      fmt.Println(err)
      os.Exit(1)
      }

      text, err := ioutil.ReadAll(resp.Body)
      if err != nil {
      fmt.Println(err)
      os.Exit(1)
      }

      fmt.Println(string(text))
      }

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.