/go-httpagent

HTTP Agent for go programming language. Provides hooks, timeout, and default header for http.Client and any other similar interface.

Primary LanguageGoMIT LicenseMIT

go-httpagent

Build Status codecov GoDoc

HTTP Agent for go programming language. Provides hooks, timeout, and default header for http.Client and any other similar interface.

Example

agent := httpagent.NewAgent(http.DefaultClient)
agent.DefaultTimeout = 10 * time.Second
agent.DefaultHeader.Set("User-Agent", "go-httpagent/0.1")
agent.RequestHooks.Append(&httpagent.RequestDumperHook{Writer: os.Stderr})
agent.ResponseHooks.Append(&httpagent.ResponseDumperHook{Writer: os.Stderr})

req, _ := http.NewRequest("GET", "https://karupas.org/", nil)

ctx := context.Background()
req = req.WithContext(req)
res, err := agent.Do(req)