work on eia client
This commit is contained in:
@ -29,7 +29,7 @@ type Client struct {
|
||||
ctx context.Context
|
||||
apiKey string
|
||||
healthCheckTimeout time.Duration
|
||||
*eiaapi.Client
|
||||
*eiaapi.ClientWithResponses
|
||||
}
|
||||
|
||||
type ClientOpts struct {
|
||||
@ -56,11 +56,18 @@ func NewClient(opts *ClientOpts) (*Client, error) {
|
||||
|
||||
// Injects Authorization: Bearer <APIKey> header into
|
||||
// outbound API calls
|
||||
basicAuth, err := securityprovider.NewSecurityProviderBearerToken(opts.APIKey)
|
||||
// basicAuth, err := securityprovider.NewSecurityProviderBearerToken(opts.APIKey)
|
||||
// if err != nil {
|
||||
// return nil, err
|
||||
// }
|
||||
// middlewares = append(middlewares, eiaapi.WithRequestEditorFn(basicAuth.Intercept))
|
||||
|
||||
// Injects API key as query parameter: ?api_key=<apiKey>
|
||||
paramAuth, err := securityprovider.NewSecurityProviderApiKey("query", "api_key", opts.APIKey)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
middlewares = append(middlewares, eiaapi.WithRequestEditorFn(basicAuth.Intercept))
|
||||
middlewares = append(middlewares, eiaapi.WithRequestEditorFn(paramAuth.Intercept))
|
||||
|
||||
// Logging middleware, if logger is given
|
||||
if opts.Logger != nil {
|
||||
@ -73,15 +80,15 @@ func NewClient(opts *ClientOpts) (*Client, error) {
|
||||
eiaapi.WithRequestEditorFn(newLoggingMiddleware(opts.Logger, logLevel)))
|
||||
}
|
||||
|
||||
client, err := eiaapi.NewClient(baseURL, slices.Clip(middlewares)...)
|
||||
client, err := eiaapi.NewClientWithResponses(baseURL, slices.Clip(middlewares)...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return &Client{
|
||||
apiKey: opts.APIKey,
|
||||
ctx: opts.Context,
|
||||
healthCheckTimeout: hcTimeout,
|
||||
Client: client,
|
||||
apiKey: opts.APIKey,
|
||||
ctx: opts.Context,
|
||||
healthCheckTimeout: hcTimeout,
|
||||
ClientWithResponses: client,
|
||||
}, nil
|
||||
}
|
||||
|
Reference in New Issue
Block a user