certimate/internal/pkg/sdk3rd/ctyun/icdn/api_query_domain_detail.go

65 lines
1.8 KiB
Go

package icdn
import (
"context"
"net/http"
)
type QueryDomainDetailRequest struct {
Domain *string `json:"domain,omitempty"`
ProductCode *string `json:"product_code,omitempty"`
FunctionNames *string `json:"function_names,omitempty"`
}
type QueryDomainDetailResponse struct {
baseResult
ReturnObj *struct {
Domain string `json:"domain"`
ProductCode string `json:"product_code"`
Status int32 `json:"status"`
AreaScope int32 `json:"area_scope"`
Cname string `json:"cname"`
HttpsStatus string `json:"https_status"`
HttpsBasic *struct {
HttpsForce string `json:"https_force"`
HttpForce string `json:"http_force"`
ForceStatus string `json:"force_status"`
OriginProtocol string `json:"origin_protocol"`
} `json:"https_basic,omitempty"`
CertName string `json:"cert_name"`
Ssl string `json:"ssl"`
SslStapling string `json:"ssl_stapling"`
} `json:"returnObj,omitempty"`
}
func (c *Client) QueryDomainDetail(req *QueryDomainDetailRequest) (*QueryDomainDetailResponse, error) {
return c.QueryDomainDetailWithContext(context.Background(), req)
}
func (c *Client) QueryDomainDetailWithContext(ctx context.Context, req *QueryDomainDetailRequest) (*QueryDomainDetailResponse, error) {
httpreq, err := c.newRequest(http.MethodGet, "/v1/domain/query-domain-detail")
if err != nil {
return nil, err
} else {
if req.Domain != nil {
httpreq.SetQueryParam("domain", *req.Domain)
}
if req.ProductCode != nil {
httpreq.SetQueryParam("product_code", *req.ProductCode)
}
if req.FunctionNames != nil {
httpreq.SetQueryParam("function_names", *req.FunctionNames)
}
httpreq.SetContext(ctx)
}
result := &QueryDomainDetailResponse{}
if _, err := c.doRequestWithResult(httpreq, result); err != nil {
return result, err
}
return result, nil
}