package elb import ( "fmt" "time" "github.com/go-resty/resty/v2" "github.com/certimate-go/certimate/pkg/sdk3rd/ctyun/openapi" ) const endpoint = "https://ctelb-global.ctapi.ctyun.cn" type Client struct { client *openapi.Client } func NewClient(accessKeyId, secretAccessKey string) (*Client, error) { client, err := openapi.NewClient(endpoint, accessKeyId, secretAccessKey) if err != nil { return nil, err } return &Client{client: client}, nil } func (c *Client) SetTimeout(timeout time.Duration) *Client { c.client.SetTimeout(timeout) return c } func (c *Client) newRequest(method string, path string) (*resty.Request, error) { return c.client.NewRequest(method, path) } func (c *Client) doRequest(req *resty.Request) (*resty.Response, error) { return c.client.DoRequest(req) } func (c *Client) doRequestWithResult(req *resty.Request, res apiResponse) (*resty.Response, error) { resp, err := c.client.DoRequestWithResult(req, res) if err == nil { statusCode := res.GetStatusCode() errorCode := res.GetError() if (statusCode != "" && statusCode != "200" && statusCode != "800") || (errorCode != "" && errorCode != "SUCCESS") { return resp, fmt.Errorf("sdkerr: api error, code='%s', message='%s', errorCode='%s', description='%s'", statusCode, res.GetMessage(), res.GetMessage(), res.GetDescription()) } } return resp, err }