Documentation ¶
Index ¶
- Constants
- Variables
- type BasicProblemDecoder
- type Client
- type HTTPError
- type Option
- func WithBaseURL(baseURL string) Option
- func WithDatadogTracing(opts ...dd_http.RoundTripperOption) Option
- func WithDefaultHeader(header, value string) Option
- func WithOpenCensusTracing() Option
- func WithProblemDecoder(decoder ProblemDecoder) Option
- func WithTokenProvider(provider auth.TokenProvider) Option
- type ProblemDecoder
- type Request
- func Connect(uriTemplate string) *Request
- func Delete(uriTemplate string) *Request
- func Get(uriTemplate string) *Request
- func Head(uriTemplate string) *Request
- func NewRequest(method, uriTemplate string) *Request
- func Options(uriTemplate string) *Request
- func Patch(uriTemplate string) *Request
- func Post(uriTemplate string) *Request
- func Put(uriTemplate string) *Request
- func Trace(uriTemplate string) *Request
- type Response
Constants ¶
View Source
const ( DefaultUserAgent string = "go-rest-utility/v1" DefaultAcceptEncoding string = "gzip" )
Variables ¶
View Source
var ( ErrBadRequest = newHTTPError(http.StatusBadRequest) ErrPaymentRequired = newHTTPError(http.StatusPaymentRequired) ErrForbidden = newHTTPError(http.StatusForbidden) ErrNotFound = newHTTPError(http.StatusNotFound) ErrMethodNotAllowed = newHTTPError(http.StatusMethodNotAllowed) ErrNotAcceptable = newHTTPError(http.StatusNotAcceptable) ErrProxyAuthRequired = newHTTPError(http.StatusProxyAuthRequired) ErrRequestTimeout = newHTTPError(http.StatusRequestTimeout) ErrConflict = newHTTPError(http.StatusConflict) ErrGone = newHTTPError(http.StatusGone) ErrLengthRequired = newHTTPError(http.StatusLengthRequired) ErrPreconditionFailed = newHTTPError(http.StatusPreconditionFailed) ErrRequestEntityTooLarge = newHTTPError(http.StatusRequestEntityTooLarge) ErrRequestURITooLong = newHTTPError(http.StatusRequestURITooLong) ErrUnsupportedMediaType = newHTTPError(http.StatusUnsupportedMediaType) ErrRequestedRangeNotSatisfiable = newHTTPError(http.StatusRequestedRangeNotSatisfiable) ErrExpectationFailed = newHTTPError(http.StatusExpectationFailed) ErrTeapot = newHTTPError(http.StatusTeapot) ErrMisdirectedRequest = newHTTPError(http.StatusMisdirectedRequest) ErrUnprocessableEntity = newHTTPError(http.StatusUnprocessableEntity) ErrLocked = newHTTPError(http.StatusLocked) ErrFailedDependency = newHTTPError(http.StatusFailedDependency) ErrTooEarly = newHTTPError(http.StatusTooEarly) ErrUpgradeRequired = newHTTPError(http.StatusUpgradeRequired) ErrPreconditionRequired = newHTTPError(http.StatusPreconditionRequired) ErrTooManyRequests = newHTTPError(http.StatusTooManyRequests) ErrRequestHeaderFieldsTooLarge = newHTTPError(http.StatusRequestHeaderFieldsTooLarge) ErrInternalServerError = newHTTPError(http.StatusInternalServerError) ErrNotImplemented = newHTTPError(http.StatusNotImplemented) ErrBadGateway = newHTTPError(http.StatusBadGateway) ErrGatewayTimeout = newHTTPError(http.StatusGatewayTimeout) ErrHTTPVersionNotSupported = newHTTPError(http.StatusHTTPVersionNotSupported) ErrVariantAlsoNegotiates = newHTTPError(http.StatusVariantAlsoNegotiates) ErrInsufficientStorage = newHTTPError(http.StatusInsufficientStorage) ErrLoopDetected = newHTTPError(http.StatusLoopDetected) ErrNotExtended = newHTTPError(http.StatusNotExtended) ErrNetworkAuthenticationRequired = newHTTPError(http.StatusNetworkAuthenticationRequired) )
Functions ¶
This section is empty.
Types ¶
type BasicProblemDecoder ¶ added in v0.6.0
type BasicProblemDecoder struct{}
func (*BasicProblemDecoder) DecodeProblem ¶ added in v0.6.0
type Client ¶
type Client struct { BaseURL *url.URL TokenProvider auth.TokenProvider // contains filtered or unexported fields }
type Option ¶
type Option func(*Client)
func WithBaseURL ¶
func WithDatadogTracing ¶ added in v0.2.0
func WithDatadogTracing(opts ...dd_http.RoundTripperOption) Option
WithDatadogTracing will add a Datadog transport to the client so that it will automatically inject trace-headers.
Should be used when you trace your application with Datadog.
Note, when used in AWS Lambda, make sure to set the service name. client.WithDatadogTracing(
dd_http.RTWithServiceName("<service_name>"),
)
func WithDefaultHeader ¶ added in v0.5.1
func WithOpenCensusTracing ¶ added in v0.2.0
func WithOpenCensusTracing() Option
WithOpenCensusTracing will add an OpenCensus transport to the client so that it will automatically inject trace-headers.
Should be used when you trace your application with OpenCensus.
func WithProblemDecoder ¶ added in v0.6.0
func WithProblemDecoder(decoder ProblemDecoder) Option
func WithTokenProvider ¶
func WithTokenProvider(provider auth.TokenProvider) Option
type ProblemDecoder ¶ added in v0.6.0
type Request ¶
type Request struct {
// contains filtered or unexported fields
}
func NewRequest ¶
func (*Request) ExpandURL ¶
ExpandURL combines the baseURL with the expanded URI template to form the final URL to be used for this Request. If no baseURL is provided the returned URL is just the expanded URI template
func (*Request) WithJSONPayload ¶
Source Files ¶
Click to show internal directories.
Click to hide internal directories.