mirror of
https://github.com/usual2970/certimate.git
synced 2025-06-08 13:39:53 +00:00
fix: #544
This commit is contained in:
parent
9667f3309b
commit
516a958c66
22
internal/pkg/vendors/baishan-sdk/client.go
vendored
22
internal/pkg/vendors/baishan-sdk/client.go
vendored
@ -4,6 +4,8 @@ import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"reflect"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
@ -35,21 +37,33 @@ func (c *Client) sendRequest(method string, path string, params interface{}) (*r
|
||||
req.Method = method
|
||||
req.URL = "https://cdn.api.baishan.com" + path
|
||||
if strings.EqualFold(method, http.MethodGet) {
|
||||
qs := make(map[string]string)
|
||||
qs := url.Values{}
|
||||
if params != nil {
|
||||
temp := make(map[string]any)
|
||||
jsonb, _ := json.Marshal(params)
|
||||
json.Unmarshal(jsonb, &temp)
|
||||
for k, v := range temp {
|
||||
if v != nil {
|
||||
qs[k] = fmt.Sprintf("%v", v)
|
||||
rv := reflect.ValueOf(v)
|
||||
switch rv.Kind() {
|
||||
case reflect.Slice, reflect.Array:
|
||||
for i := 0; i < rv.Len(); i++ {
|
||||
qs.Add(fmt.Sprintf("%s[]", k), fmt.Sprintf("%v", rv.Index(i).Interface()))
|
||||
}
|
||||
case reflect.Map:
|
||||
for _, rk := range rv.MapKeys() {
|
||||
qs.Add(fmt.Sprintf("%s[%s]", k, rk.Interface()), fmt.Sprintf("%v", rv.MapIndex(rk).Interface()))
|
||||
}
|
||||
default:
|
||||
qs.Set(k, fmt.Sprintf("%v", v))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
req = req.
|
||||
SetQueryParams(qs).
|
||||
SetQueryParam("token", c.apiToken)
|
||||
SetQueryParam("token", c.apiToken).
|
||||
SetQueryParamsFromValues(qs).SetDebug(true)
|
||||
} else {
|
||||
req = req.
|
||||
SetHeader("Content-Type", "application/json").
|
||||
|
2
internal/pkg/vendors/baishan-sdk/models.go
vendored
2
internal/pkg/vendors/baishan-sdk/models.go
vendored
@ -30,7 +30,7 @@ type CreateCertificateResponse struct {
|
||||
}
|
||||
|
||||
type GetDomainConfigRequest struct {
|
||||
Domains string `json:"domains"`
|
||||
Domains string `json:"domains"`
|
||||
Config []string `json:"config"`
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user