示例#1
0
 /// <summary>
 /// 删除所有指定类型的记录。
 /// </summary>
 /// <param name="domain">域名</param>
 /// <param name="rr">主机记录</param>
 /// <param name="type">解析记录类型</param>
 /// <returns>是否删除成功。</returns>
 private bool DeleteRecords(string domain, string rr, string type)
 {
     try
     {
         var client = GetNewClient();
         DeleteSubDomainRecordsRequest request = new DeleteSubDomainRecordsRequest
         {
             DomainName = domain,
             RR         = rr,
             Type       = type
         };
         var response = client.GetAcsResponse(request);
         if (response.HttpResponse.isSuccess())
         {
             Log.Print($"成功清理{ type }记录{ rr }.{ domain }。");
             return(true);
         }
         else
         {
             Log.Print($"清理{ type }记录{ rr }.{ domain }失败。");
             return(false);
         }
     }
     catch (Exception e)
     {
         Log.Print($"删除{ type }记录{ rr }.{ domain }记录时出现异常:{ e }");
         return(false);
     }
 }
示例#2
0
        public static void DeleteCertbotValidation(this DefaultAcsClient client, string domain)
        {
            try
            {
                var request = new DeleteSubDomainRecordsRequest
                {
                    DomainName = domain,
                    RR         = @"_acme-challenge",
                    Type       = @"TXT"
                };

                var response = client.GetAcsResponse(request);

                Console.WriteLine($@"RR: {response.RR}");
                Console.WriteLine($@"RequestId: {response.RequestId}");
                Console.WriteLine($@"TotalCount: {response.TotalCount}");
            }
            catch (ServerException e)
            {
                Console.WriteLine(e);
            }
            catch (ClientException e)
            {
                Console.WriteLine(e);
            }
        }
示例#3
0
 /// <summary>
 /// 删除所有记录。
 /// </summary>
 /// <param name="rd">待删除的记录。</param>
 /// <returns>删除成功返回true,否则返回false。</returns>
 private bool DeleteRecords(Record rd)
 {
     try
     {
         var client = GetNewClient();
         DeleteSubDomainRecordsRequest request = new DeleteSubDomainRecordsRequest
         {
             DomainName = rd.DomainName,
             RR         = rd.RR
         };
         var response = client.GetAcsResponse(request);
         if (response.HttpResponse.isSuccess())
         {
             Log.Print($"成功清理记录{ rd.RR }.{ rd.DomainName }。");
             return(true);
         }
         else
         {
             Log.Print($"清理记录{ rd.RR }.{ rd.DomainName }失败。");
             return(false);
         }
     }
     catch (Exception e)
     {
         Log.Print($"删除{ rd.RR }.{ rd.DomainName }记录时出现异常:{ e }");
         return(false);
     }
 }
示例#4
0
        public override DomainRecordActionResult DeleteSubDomainRecords(DeleteDomainRecordParam param)
        {
            var request = new DeleteSubDomainRecordsRequest()
            {
                DomainName = param.DomainName,
                RR         = param.RR
            };

            try
            {
                var response = client.GetAcsResponse(request);
                if (response == null || response.HttpResponse.Content == null || response.HttpResponse.Content.Length == 0)
                {
                    throw new Exception($"Delete subdomain record info failed. record domain is {param.RR}.{param.DomainName}");
                }
                string result    = Encoding.UTF8.GetString(response.HttpResponse.Content);
                var    resultObj = new JsonSerializer().Deserialize <DomainRecordActionResult>(new JsonTextReader(new StringReader(result)));
                if (resultObj != null)
                {
                    resultObj.Status = true;
                }
                return(resultObj);
            }
            catch (ServerException e)
            {
                throw new Exception($"Aliyun server error. {e.Message}");
            }
            catch (ClientException e)
            {
                throw new Exception($"Reuqest client error. errcode is {e.ErrorCode}, {e.Message}");
            }
        }