Documentation
¶
Index ¶
- type Client
- func (c *Client) Auth(ctx context.Context, clientID string, clientSecret *config.Plaintext)
- func (c *Client) Delete(ctx context.Context, endpoint string, request any) (resp *http.Response, err error)
- func (c *Client) Get(ctx context.Context, endpoint any, request any, response any) (resp *http.Response, err error)
- func (c *Client) Post(ctx context.Context, endpoint any, request any, response any) (resp *http.Response, err error)
- func (c *Client) Put(ctx context.Context, endpoint any, request any, response any) (resp *http.Response, err error)
- func (c *Client) SetAuth(header, value string)
- type Options
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
BaseURL *url.URL
HTTPClient *http.Client
// if not nil, call SetUpRequest() just before the Do() call
SetupRequest func(req *http.Request, c *Client, body []byte)
// contains filtered or unexported fields
}
func NewClient ¶
NewClient returns a *Client struct, ready to use. Unless options are supplied the base URL defaults to `https://localhost:443`.
func (*Client) Auth ¶
Auth sets up a 2-legged OAUTH2 with client ID and Secret. If clientID is empty just return, allowing callers to call when the value are not set (or empty) not set.
func (*Client) Delete ¶
func (c *Client) Delete(ctx context.Context, endpoint string, request any) (resp *http.Response, err error)
Delete Method
func (*Client) Get ¶
func (c *Client) Get(ctx context.Context, endpoint any, request any, response any) (resp *http.Response, err error)
GET method. On successful return the response body will be closed. endpoint is either a string or a *url.URL relative to the client c base URL.
func (*Client) Post ¶
func (c *Client) Post(ctx context.Context, endpoint any, request any, response any) (resp *http.Response, err error)
Post issues a POST request to the client using endpoint as either a relative path to the base URL in the client, encoding request as a JSON body and decoding any returned body into result, if set. endpoint is either a string or a *url.URL relative to the client c base URL.
type Options ¶
type Options func(*restOptions)
Options are used to control behaviour of ICP functions
func BaseURL ¶
BaseURLString sets the root of the REST API URL. The default is "https://localhost"
func BaseURLString ¶ added in v1.14.2
BaseURLString sets the root of the REST API URL. The default is "https://localhost"
func HTTPClient ¶
HTTPClient sets the http.Client to use for requests. The default is the default http package client.
func SetupRequestFunc ¶ added in v1.12.1
SetupRequestFunc sets a function to call while setting up the request. For example, to add Basic Authentication:
client = rest.NewClient(
rest.SetupRequestFunc(func(req *http.Request, c *rest.Client, body []byte) {
req.SetBasicAuth(username, password.String())
}),
)