net/test_client/main.go

42 lines
717 B
Go

package main
import (
"errors"
"fmt"
"git.3crabs.ru/VLADIMIR/net/http"
)
type CustomDNS struct{}
func (*CustomDNS) GetIP(domain string) (string, error) {
if domain == "test.ru" {
return "127.0.0.1:8081", nil
}
return "", errors.New("ip not found")
}
func main() {
client := http.Client{
DNS: &CustomDNS{},
Transport: &http.HttpTransport{},
}
r, err := client.Do(
"GET",
"http://test.ru",
[]http.Header{
{Name: "Host", Value: "3crabs.ru"},
{Name: "User-Agent", Value: "3crabs/0.0.1"},
{Name: "Accept", Value: "*/*"},
},
)
if err != nil {
panic(err)
}
fmt.Println(r.StatusCode)
for _, header := range r.Headers {
fmt.Println(header)
}
fmt.Println(string(r.Body))
}