【修复】webhook申请多域名证书时对同一个域名重复添加验证

【调整】bt-domain请求失败判断
This commit is contained in:
v-me-50
2025-09-30 10:56:19 +08:00
parent 6258555c47
commit 0bb09ae6e5
2 changed files with 11 additions and 6 deletions

View File

@@ -76,6 +76,9 @@ func (c *Config) MakeRequest(method, path string, data interface{}) (map[string]
if err := json.Unmarshal(respBytes, &result); err != nil {
return nil, err
}
if !result["status"].(bool) {
return nil, fmt.Errorf("API 请求失败: %v", result["msg"])
}
return result, nil
}

View File

@@ -7,8 +7,6 @@ import (
"time"
)
var configData string
type Config struct {
WebhookConfig *public.WebhookConfig
@@ -19,7 +17,8 @@ type Config struct {
}
type DNSProvider struct {
config *Config
config *Config
dataTemp string
}
func NewConfig(WebhookConfigStr map[string]string) *Config {
@@ -45,7 +44,10 @@ func NewDNSProviderConfig(config *Config) (*DNSProvider, error) {
if config == nil {
return nil, fmt.Errorf("配置不能为空")
}
return &DNSProvider{config: config}, nil
return &DNSProvider{
config: config,
dataTemp: config.WebhookConfig.Data,
}, nil
}
func (d *DNSProvider) Timeout() (timeout, interval time.Duration) {
@@ -53,12 +55,12 @@ func (d *DNSProvider) Timeout() (timeout, interval time.Duration) {
}
func (d *DNSProvider) Present(domain, token, keyAuth string) error {
configData = d.config.WebhookConfig.Data
d.config.WebhookConfig.Data = d.dataTemp
return d.send(domain, token, keyAuth, "present")
}
func (d *DNSProvider) CleanUp(domain, token, keyAuth string) error {
d.config.WebhookConfig.Data = configData
d.config.WebhookConfig.Data = d.dataTemp
return d.send(domain, token, keyAuth, "cleanup")
}