木子屋 Dnawo's BLOG

DomainAPI域名查询接口(API)说明

👤 dnawo 📅 2012-10-10 👁 8840 👍 0 💬 1 🔄 本站原创
接口地址

http://api.domainapi.com/v1/availability/xml/查询域名

HTTP Basic Authentication认证

Request.Headers.Add("Authorization", "Basic base64(用户名:密码)")

返回内容

<?xml version="1.0" encoding="UTF-8"?>
<response>
<service>availability</service>
<domain>查询域名</domain>
<timestamp>时间戳</timestamp>
<content>
<domainList>
<domain>
<status>域名状态</status>
<name>查询域名</name>
</domain>
</domainList>
</content>
</response>

status值类型:

1).taken:已注册
2).free:可注册

C#域名查询类

using System;
using System.IO;
using System.Net;
using System.Text;
using System.Xml;

namespace ConsoleApplication1
{
    public static class Domain
    {
        /// <summary>
        /// 域名查询
        /// </summary>
        /// <param name="domain"></param>
        /// <returns>
        ///     1   : free
        ///     -1  : taken
        ///     -2  : error
        /// </returns>
        public static int Check(string domain)
        {
            int result = 0;
            try
            {
                Encoding encoding = Encoding.GetEncoding("utf-8");
                Uri uri = new Uri(string.Format("http://api.domainapi.com/v1/availability/xml/{0}", domain));
                string basic = string.Format("Basic {0}", Convert.ToBase64String(new ASCIIEncoding().GetBytes("dnawo:password12345")));
                WebRequest webRequest = WebRequest.Create(uri);
                webRequest.Headers.Add("Authorization", basic);
                WebResponse webResponse = webRequest.GetResponse();
                using (StreamReader streamReader = new StreamReader(webResponse.GetResponseStream(), encoding))
                {
                    XmlDocument xmlDocument = new XmlDocument();
                    xmlDocument.LoadXml(streamReader.ReadToEnd());
                    XmlNode xmlNode = xmlDocument.SelectSingleNode("/response/content/domainList/domain/status");
                    if (xmlNode != null)
                    {
                        if (xmlNode.InnerText == "free")
                            result = 1;
                        else
                            result = -1;
                    }
                }
            }
            catch
            {
                result = -2; 
            }

            return result;
        }
    }
}

参考资料

[1].Authentication:http://www.domainapi.com/documentation/how-to-use-domainapi/some-generalities-about-domainapi/authentication.html
[2].Call domainAPI:http://www.domainapi.com/documentation/how-to-use-domainapi/some-generalities-about-domainapi/call-domainapi.html
[3].Domain Availability API:http://www.domainapi.com/documentation/how-to-use-domainapi/servuces-provided/domain-availability-api.html

评论(1)

admin1 2014-01-14 19:31
这个怎么注册的哈,收费的价格贵吗
[reply=dnawo,2014-01-16 11:32 AM]刚看了下,在首页搜索login,有找到一个链接,但点击没用,忘了当时怎么得到帐号了,不好意思[/reply]
计算题
评论需审核通过后显示
← 上一篇 Thread构造函数(ParameterizedThreadSt… 下一篇 → Google二维码生成接口(API)说明