Go: Пример простого HTTP GET запроса

Начало

Создаем файл http-get.go, пишем туда следующий код:

package main

import (
	"os"
	"io/ioutil"
	"log"
	"net/http"
)

func main() {

	resp, err := http.Get(os.Args[1])
	if err != nil {
		log.Fatal(err)
	}

	defer resp.Body.Close()

	body, err := ioutil.ReadAll(resp.Body)
	if err != nil {
		log.Fatal(err)
	}

	_, err = os.Stdout.Write(body)
	if err != nil {
		log.Fatal(err)
	}
}

Компилируем:

go build http-get.go

Выполняем:

  • для Linux ./http-get http://google.com
  • для windows http-get.exe http://google.com

Запись результата в файл:

./http-get http://google.com > index.html

Пример

Результат

Теги: go