// The Go standard library comes with excellent support // for HTTP clients and servers out of the box with the // `net/http` package. In this example we'll use it to // issue simple HTTP requests. package main import ( "bufio" "fmt" "net/http" ) func main() { // Issue a HTTP GET request to a server. http.Get is a // convenient shortcut around creating a http.Client // object and calling its Get() method; it uses the // http.DefaultClient object which has useful default // settings. resp, err := http.Get("http://gobyexample.com") if err != nil { panic(err) } defer resp.Body.Close() // Print the HTTP response status. fmt.Println("Response status:", resp.Status) // Print the first 5 lines of the response body. scanner := bufio.NewScanner(resp.Body) for i := 0; scanner.Scan() && i < 5; i++ { fmt.Println(scanner.Text()) } if err := scanner.Err(); err != nil { panic(err) } }