Documentation
¶
Overview ¶
Package http provides shared HTTP client helpers (e.g. base-URL transport) for code that calls external HTTP APIs.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type BaseURLTransport ¶
type BaseURLTransport struct {
// BaseURL is the API base URL (e.g. "https://api.github.com").
BaseURL *url.URL
// Next is the underlying RoundTripper. Defaults to nethttp.DefaultTransport if nil.
Next nethttp.RoundTripper
}
BaseURLTransport is a nethttp.RoundTripper that rewrites every request URL to resolve against a fixed base URL. This allows callers to make requests with relative paths (e.g. "/graphql") and have the transport prepend the configured base URL transparently.
func (*BaseURLTransport) RoundTrip ¶
RoundTrip rewrites req.URL to resolve against BaseURL, then delegates to Next. The base URL path and request path are joined explicitly so that base URLs with a path component (e.g. "https://ghe.example.com/api") are handled correctly regardless of whether the request path starts with "/".