域名解析增加CloudFlare DNS支持

This commit is contained in:
刘祥超
2021-04-15 17:02:01 +08:00
parent 55d3ba491b
commit 7217785c58
15 changed files with 582 additions and 40 deletions

View File

@@ -9,10 +9,11 @@ const (
ProviderTypeDNSPod ProviderType = "dnspod"
ProviderTypeAliDNS ProviderType = "alidns"
ProviderTypeDNSCom ProviderType = "dnscom"
ProviderTypeCloudFlare ProviderType = "cloudFlare"
ProviderTypeCustomHTTP ProviderType = "customHTTP"
)
// 所有的服务商类型
// AllProviderTypes 所有的服务商类型
var AllProviderTypes = []maps.Map{
{
"name": "阿里云DNS",
@@ -26,26 +27,32 @@ var AllProviderTypes = []maps.Map{
"name": "帝恩思DNS.COM",
"code": ProviderTypeDNSCom,
},**/
{
"name": "CloudFlare DNS",
"code": ProviderTypeCloudFlare,
},
{
"name": "自定义HTTP DNS",
"code": ProviderTypeCustomHTTP,
},
}
// 查找服务商实例
// FindProvider 查找服务商实例
func FindProvider(providerType ProviderType) ProviderInterface {
switch providerType {
case ProviderTypeDNSPod:
return &DNSPodProvider{}
case ProviderTypeAliDNS:
return &AliDNSProvider{}
case ProviderTypeCloudFlare:
return &CloudFlareProvider{}
case ProviderTypeCustomHTTP:
return &CustomHTTPProvider{}
}
return nil
}
// 查找服务商名称
// FindProviderTypeName 查找服务商名称
func FindProviderTypeName(providerType ProviderType) string {
for _, t := range AllProviderTypes {
if t.GetString("code") == providerType {