新网域名查询和注册API接口类源码

更新时间:2024-06-25 00:17:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

最近公司要做一个基于新网的API,在自己的系统中实现实时查询域名注册情况,并且要能实时注册,注册费用自动从我们的代理帐户中扣除,下面是我写的核心实现类代码: public class XinNetApiBase {

//默认代理编号

public readonly static string AgentID = \;

private Encoding _WebEncode = Encoding.GetEncoding(\); private string _RequestString; private string _Result; private string _RequestUrl;

private WebClient _EWebClient = new WebClient();

///

/// 处理编码 ///

public Encoding WebEncode {

get { return _WebEncode; } set { _WebEncode = value; } }

///

/// 请求的查询参数 ///

public string RequestString {

get { return _RequestString; } set { _RequestString = value; } }

///

/// 请求返回的结果 /// public string Result {

get { return _Result; } set { _Result = value; } }

///

/// 请求的URL地址 ///

public string RequestUrl {

get { return _RequestUrl; } set { _RequestUrl = value; } }

///

/// 客户端与服务器通信类 ///

public WebClient EWebClient {

get { return _EWebClient; } set { _EWebClient = value; } }

public XinNetApiBase(ApiType _apitype, List _list)

{

this.RequestUrl = GetApiUrl(_apitype);

this.RequestString = GetRequestString(_list); this.GetHttp(); }

public XinNetApiBase(string _ApiUrl, List _list) {

this.RequestUrl = _ApiUrl;

this.RequestString = GetRequestString(_list); }

public string GetRequestString(List list) {

string requestUrl = \;

foreach (QueryParam q in list) {

requestUrl += q.QueryName + \ + HttpUtility.UrlEncode(q.QueryValue, this.WebEncode) + \; }

return requestUrl.TrimEnd('&'); }

public string GetHttp() {

this.EWebClient.Headers.Add(HttpRequestHeader.ContentType, \);

this.EWebClient.Encoding = this.WebEncode;

this.Result = this.EWebClient.UploadString(new Uri(this.R

equestUrl), \, this.RequestString);

return this.Result;

}

public string GetApiUrl(ApiType _ApiType) {

string _Url = \; switch (_ApiType) {

case ApiType.Check:

_Url = \d=check&charset=utf-8\; break;

case ApiType.Register:

_Url = \d=Register&charset=utf-8\; break;

case ApiType.Status:

_Url = \d=Status&charset=utf-8\; break;

case ApiType.ModDns:

_Url = \d=ModDns&charset=utf-8\; break;

case ApiType.domain:

_Url = \d=DomainRenew&charset=utf-8\;

break;

case ApiType.GetProductKey:

_Url = \d=GetProductKey&charset=utf-8\; break;

case ApiType.ChangeProductKey:

_Url = \d=ChangeProductKey&charset=utf-8\; break;

case ApiType.ModifyContactor:

_Url = \d=ModifyContactor&charset=utf-8\; break; default:

_Url = \d=testmd5&charset=utf-8\; break; }

return _Url; }

///

/// MD5加密 ///

/// /// ///

public static string MD5(string _ConvertString, int _Len) {

using (System.Security.Cryptography.MD5CryptoServiceProvider provider = new System.Security.Cryptography.MD5CryptoServiceProvider())

{

switch (_Len) {

case 16:

return BitConverter.ToString(provider.ComputeHash(Encoding.UTF8.GetBytes(_ConvertString)), 4, 8).Replace(\, string.Empty).ToUpper(System.Globalization.CultureInfo.CurrentCulture);

case 32:

return BitConverter.ToString(provider.ComputeHash(Encoding.UTF8.GetBytes(_ConvertString))).Replace(\, string.Empty).ToUpper(System.Globalization.CultureInfo.CurrentCulture); default:

return BitConverter.ToString(provider.ComputeHash(Encoding.UTF8.GetBytes(_ConvertString))).Replace(\, string.Empty).ToUpper(System.Globalization.CultureInfo.CurrentCulture);

} } } }

public class QueryParam {

private string _QueryName; private string _QueryValue;

public string QueryName {

set { this._QueryName = value; } get { return this._QueryName; } }

public string QueryValue {

set { this._QueryValue = value; } get { return this._QueryValue; } }

public QueryParam(string _Name, string _Value) {

this.QueryName = _Name; this.QueryValue = _Value; } }

public enum ApiType {

Check, Register, Status, ModDns, domain,

GetProductKey, ChangeProductKey,

ModifyContactor }

查询域名是否已经注册,使用演示:

List param = new List();

param.Add(new QueryParam(\, \)); param.Add(new QueryParam(\, \)); param.Add(new QueryParam(\, \)); param.Add(new QueryParam(\, \)); param.Add(new QueryParam(\, \));

param.Add(new QueryParam(\, \));

XinNetApiBase _XinNet = new XinNetApiBase(ApiType.Check, param);

Response.Write(_XinNet.Result);

//_XinNet.Result 返回的结果 num=3&enc=E&name1=viqiwu.com&chk1=0&name2=viqiwu.com.cn&chk2=100&name3=viqiwu.cn&chk3=0 //chk1=0 表示不能注册了 chk1=100 表示可以注册

下面是官方API说明文档:

Xinnet Corp. 北京新网数码信息技术有限公司

POST参数注意事项:

所有电话号码及邮编必须为数字,且不能为零 所有英文信息字段必须为

本接口暂时不支持信任制代理 1. 文档说明 1.1 文档简介

本版本采用HTTP+POST方式进行注册。 1.2 使用限制

只有新网的正式代理才能使用。 必须符合接口认证方式才能提交命令。

注册接口按照该代理的价格进行实时注册实时扣费,如果预付款不足,将不能提交注册申请。

接口文档的获得和传播必须符合新网的保密协议 1.3 操作说明

1。代理在新网代理专区填写授权POST的IP地址和认证密码。

2。按照接口说明编写客户端程序向接口提交查询、注册命令,立刻获得结果。

1.4 域名范围

国际域名,.com,.net,.org,.biz,.info,.cc,.mobi域名,包括中文.com,.cc 国内域名,.cn,.com.cn类,.中国,.网络,.公司,通用网址 1.5 md5串测试地址:

url:http://api.xinnet.com/domain/api.gb?method=testmd5

http://api.xinnet.com/domain/api.gb?method=testmd5&charset=utf-8 (utf-8字符集) 参数:strbuf

输出:strbuf内容及编码后的md5串

中文编码使用gb2312 或者utf-8编码,否则易出现md5校验错误:verify-failure 摘要认证失败

关于此处说明:请确保相关程序文件的charset设置和文件自身保存的编码一致。 并请保证所有关联文件编码一致,您明确要求不一致(需转码)的除外

gb2312和utf-8中文md5结果可能不同,请确保提交内容字符集和md5串一致。 2. 接口概述 2.1 接口目录

Check接口:主要负责进行域名的查询,采用多线程方式,可以同时查询多个域名 Register接口:注册接口,实时注册,成功后立即扣费。如果超时,不转为后台注册,域名将被删除。

不提供通用网址注册服务。 Status接口:查询域名是否注册成功。 ModDns接口: 进行在线修改DNS操作。

domain续费接口:域名续费接口,实时续费,立即扣费。

获取产品密码接口:获取域名管理密码、mydns密码以及域名到期时间。 修改产品密码接口:修改域名管理密码以及mydns密码。

ModifyContactor 接口:修改除域名所有人以外的所有联系人信息。 注册本域名下的DNS:注册本域名下的DNS。 查询本域名下的DNS:查询本域名下的DNS。 修改本域名下的DNS:修改本域名下的DNS。 删除本域名下的DNS:删除本域名下的DNS。

2.2 认证方式

1。IP限制,对于任何接口必须从该代理授权的IP,每个代理限填3个IP地址 2。MD5非可逆加密摘要,除Check接口、和Status接口外,其它所有接口都要求提供

2.3 返回结果

按照POST数据格式返回数据结果

3. 接口说明

3.1 Check 接口

POST 地址: http://api.xinnet.com/domain/api.gb?method=check http://api.xinnet.com/domain/api.gb?method=check&charset=utf-8 (utf-8字符集)

POST 参数: name 名字;1个,没有后缀 enc 编码,E,G;1个;

suffix 后缀;1-N个,域名后缀.com/.net/.org/.中国/cnaddr/.公司/

client 代理号;1个

例如:name=abc&enc=E&suffix=.com&suffix=.net&suffix=.cn&client=agent111

POST 数据,必须进行URL编码

验证:client和POST的来源IP必须与该代理填写的地址一致

返回结果: num 域名数量 enc 编码

name[1--N] 域名,名字+后缀 N=num

chk[1--N] N=num 查询结果: 0 不可注册 100 可以注册

信息编码:

auth-failure 认证失败

例如:num=3&enc=E&name1=abc.com&chk1=0&name2=abc.net&chk2=100&name3=abc.org&chk3=-100

注意:通用网址suffix=cnaddr(目前仅提供老通用网址续费,不提供注册服务)

3.2 Register 接口

POST 地址: http://api.xinnet.com/domain/api.gb?method=Register http://api.xinnet.com/domain/api.gb?method=Register&charset=utf-8 (utf-8字符集) POST 参数: [域名信息]

dn 域名;1个,包括名字和后缀 enc 编码,E,G;1个; client 代理号;1个

checksum MD5加密摘要

period 注册年数;[如果不填默认为1年],有效值1-10年 url URL转发[通用网址需要,如果不填默认为www.xinnet.com]

[注册所有人或注册单位的信息]

uname1 注册人中文单位名称 [必须]

uname2 注册人英文单位名称 [必须]------------------- 必须英文,且中间有一个空 格

uname3 注册单位拼音 [.中国\\通用网址必须] ---------- 必须为字母

uname4 注册单位缩写 [.中国\\通用网址必须] ----------

location 注册人单位所在地 [注册.中国\\通用网址必须]

rname1 注册人|单位负责人中文名称 [国内域名必须] rname2 注册人|单位负责人英文名称 [国际域名必须] ust 注册人英文国家名称 两个字母[CN表示中国],接口自动翻译中文

uprov 注册人英文省份名称 如:Beijing,接口自动翻译中文

ucity1 注册人中文城市名称 [国内域名必须] ucity2 注册人英文城市名称 [国际域名必须] uaddr1 注册人中文地址 [国内域名必须] uaddr2 注册人英文地址 [国际域名必须] uzip 注册人邮政编码 [必须]

utelc 注册人电话国家码, 可以不填默认为86,

长度不能大于3位

utela 注册人电话区号 如果为手机可以不填,此项不可为0

uteln 注册人电话号码 (区号+电话号码长度必须小于12)

utele 注册人电话分机

ufaxc 注册人传真国家码, 可以不填默认为86,长度不能大于3位

ufaxa 注册人传真区号 如果为手机可以不填,此项不可为0

ufaxn 注册人传真号码 必须为数字 (区号+传真号码长度必须小于12)

ufaxe 注册人传真分机 uemail 注册人email地址

trade 注册人所在行业英文编码 [如果不填,默认为商业S8]//此字段最好不填,如果

填写,千万不能用小写S

[域名管理联系人信息] 管理联系人单位地址信息和注册人信息一致,所以不用填 写

uincode travel域名UIN编码 travel域名必须,其他域名不需要 certtype asia域名证件类型 asia域名必须,其他域名不需要 passport 护照或居民身份证 certificate 营业执照

legislation 特许成立的法定机构证明 societiesRegistry 非营利团体登记证明 politicalPartyRegistry 政党注册证明 other 其他

certcode asia域名证件号码 asia域名必须,其他域名不需要 entitytype asia域名实体类型 asia域名必须,其他域名不需要 naturalPerson 个人

corporation 公司或社团法人 cooperative 合作社

partnership 合伙或集体公司 government 政府机关 politicalParty 政党或工会

society 信托管理机构﹑资产管理机构﹑协会或社团 institution 公共机构 other 其他

aname1 管理联系人中文名称 [国内域名必填] aname2 管理联系人英文名称 [国际域名必填] atelc 管理联系人电话国家码 可以不填默认为86,长度不能大于3位

atela 管理联系人电话区号 如果为手机可以不填 ateln 管理联系人电话号码 区号+电话号码长度必须小于12

atele 管理联系人电话分机 可以不填,此项不可为0

afaxc 管理联系人传真国家码,可以不填默认为86,长度不能大于3位

afaxa 管理联系人传真区号,如果为手机可以不填 可以不填,此项不可为0

afaxn 管理联系人传真号码

afaxe 管理联系人传真分机

aemail 管理联系人电子邮件地址 [必须] 说明:管理联系人和注册人的电话和传真必须保证一份为填写完整的。 否则,如果管理联系人电话传真缺少,将使用注册人的电话传真

如果注册人电话传真缺少,将使用管理联系人的电话传真

如果注册人没有email地址,将使用管理联系人的email地址

[技术联系人信息]

tname1 技术联系人中文名称 [如果不填,默认为管理联系人]

tname2 技术联系人英文名称 [如果不填,默认为管理联系人]

tunit1 技术联系人单位中文名称 [如果不填,默认为管理联系人]

tunit2 技术联系人单位英文名称 [如果不填,默认为管理联系人]

tst 技术联系人英文国家名称, 两个字母[CN表示中国], [如果不填,默认为

管理联系人]

tprov 技术联系人英文省份名称 如:Beijing,接口自动翻译中文,[如果不填,默认

为管理联系人]

tcity1 技术联系人中文城市名称 [如果不填,默认为管理联系人]

tcity2 技术联系人英文城市名称 [如果不填,默认为管理联系人]

taddr1 技术联系人中文地址 [如果不填,默认为管理联系人]

taddr2 技术联系人英文地址 [如果不填,默认为管理联系人]

tzip 技术联系人邮政编码 [如果不填,默认为管

3.3 Status 接口

POST 地址: http://api.xinnet.com/domain/api.gb?method=Status http://api.xinnet.com/domain/api.gb?method=Status&charset=utf-8 (utf-8字符集)

dn 域名;1个,包括名字和后缀

enc 编码,E,G;1个;如果不填,模认为E client 代理号;1个

例如:dn=abc.com&enc=E&client=agent111 POST 数据,必须进行URL编码

验证:client和POST的来源IP必须与该代理填写的地址一致

返回结果: ret 返回结果,

100注册成功,0注册不成功,50等待注册,-100该域名不存在 -20域名存在但您没有管理权限 err 错误信息 信息编码:

auth-failure 认证失败 name-invalid 无效的域名

例如:ret=0&err=auth-failure

3.4 ModDns 接口

POST 地址: http://api.xinnet.com/domain/api.gb?method=ModDns http://api.xinnet.com/domain/api.gb?method=ModDns&charset=utf-8 (utf-8字符集) POST 参数: [域名信息]

dn 域名;1个,包括名字和后缀

enc 编码,E,G;1个; client 代理号;1个

dns1 域名主服务器名字[必须填写] dns2 域名辅服务器名字[必须填写] checksum MD5加密摘要

例如:dn=abc.com&enc=E&client=agent111&dns=ns.xinnetdns.com POST 数据,都必须进行URL编码,否则中文信息将不正确

验证:client和POST的来源IP必须与该代理填写的地址一致

checksum=MD5(\ \为字符串常量,表示接口名称。

其他没有引号表示为POST参数变量,password为代理专区中设置的认证密码

client为客户号,dn为域名,dns1,dns2为域名服务器名字[例如:ns.xinnetdns.com]

返回结果: ret 注册结果,0 失败,100成功 info 正常的信息,1个 err 错误的信息,0-N个 返回信息:

格式: 操作/对象-结果

mod-success 修改成功 mod-failure 修改失败 auth-failure 认证失败 name-null 域名为空 name-wrong 错误的域名后缀 name-invalid 域名无效包含错误字符 client-invalid 客户号无效

.

client-null 客户号为空 verify-null 没有摘要 db-fail 数据库连接失败 verify-failure 摘要认证失败 dns1-invalid 主域名服务器名字无效 dns1-null 主域名服务器名字为空 dns2-invalid 辅域名服务器名字无效 dns2-null 辅域名服务器名字为空 domain-auth-Failed 域名不是该代理所有

例如: ret=100&info=mod-success ret=0&err=auth-failure 3.5 domain续费接口

POST 地址: http://api.xinnet.com/domain/api.gb?method=DomainRenew http://api.xinnet.com/domain/api.gb?method=DomainRenew&charset=utf-8 (utf-8字符集) 参数:

client 代理号;1个

dn 域名;1个,包括名字和后缀 enc 编码,E,G;1个;

begindate 续费起始日期 yyyy-mm-dd (起始日期是指域名当前到期时间) period 续费年数 不能大于9或等于0 checksum MD5校验码 例如:

checksum=b47746405dd4e41303e2ee1307155452&client=agent4978&dn=ceshiceshi1.com.cn&enc=E&begindate=2005-10-

07&period=1

POST 数据,必须进行URL编码

验证:client和POST的来源IP必须与该代理填写的地址一致 checksum=MD5(\indate)

\为字符串常量,表示接口名称。

其他没有引号表示为POST参数变量,password为代理专区中设置的认证密码

client为客户号,dn为域名,enc为编码,begindate为续费起始日期 yyyy-mm-dd

返回结果:

ret 注册结果,0 失败,100成功 info 正常的信息,1个 err 错误的信息,0-N个 返回信息:

格式: 操作/对象-结果

auth-failure 认证失败 client-null 客户号为空 verify-null 没有摘要 db-fail 数据库连接失败 verify-failure 摘要认证失败 period-invalid 续费年数错误 renew-success 认证失败 name-invalid 无效的域名 name-wrong 无效的域名

name-noexist 没有符合条件的域名 begindate-null 起始日期空 credit-fail 余额不足

clintId-error 没有域名的管理权限 date-error 起始日期或编码错误

db-error 数据库操作失败

last-waiting 上次续费操作未完成 invalid-renew 续费超过最长期限 begindate-error 起始日期与库里域名到期时间不一致 domain-auth-Failed 域名不是该代理所有

例如:

ret=100&info=renew-success ret=0&err=auth-failure 域名最长年限: 国际域名:10年; 国内英文域名:10年; 国内中文域名:10年; 普通通用网址:10年; 通用词:10年; 白金词:2年。 PS:

超出域名最长年限的续费将不成功。

3.6 获取产品密码接口

POST 地址: http://api.xinnet.com/domain/api.gb?method=GetProductKey

http://api.xinnet.com/domain/api.gb?method=GetProductKey&charset=utf-8 (utf-8字符 集)

name 域名;1个,包括后缀

enc 编码,E,G;1个;

client 代理号;1个

keyname 查询属性名//空或'Password'为密码查询,'ExpireDate'为查询域名过期日期[New!!!]

'MyDnsPass'查询MyDns密码 checksum MD5加密摘要

checksum=MD5(\nc) password: 代理密码 例如:

enc=E&client=agent1&name=rabette.com&keyname=ExpireDate&checksum=9bc77f99554dsacd046beba7e42081b5

返回:&name=rabette.com&key=2008-02-24

enc=E&client=agent1&name=rabette.com&checksum=9bc77f99554dsacd046beba7e42081b5 或

enc=E&client=agent1&name=rabette.com&keyname=Password&checksum=9bc77f99554dsacd046beba7e42081b5

返回:&name=rabette.com&key=sdfee22dd

POST 数据,必须进行URL编码

验证:client和POST的来源IP必须与该代理填写的地址一致

返回结果: ret 返回结果, key[] 密码 err 错误信息 信息编码:

auth-failure 认证失败

name-invalid 无效的域名 db-failure 数据库错误

domain-auth-Failed 域名不是该代理所有 例如:ret=0&err=auth-failure ret=0&err=db-failure 数据库错误

name=abc.org&key=dafsadfas

3.7 修改产品密码接口

POST 地址: http://api.xinnet.com/domain/api.gb?method=ChangeProductKey

http://api.xinnet.com/domain/api.gb?method=ChangeProductKey&charset=utf-8 (utf-8字符 集)

dn 域名;1个,包括名字和后缀 enc 编码,E,G;1个; client 代理号;1个 checksum MD5加密摘要

checksum=MD5(\rd+dn+enc) password: 代理密码

keyname 修改属性名//空或'Password'(6-15)为域名管理密码查询,'MyDnsPass'(6-20)查询

MyDns密码

newkey 新密码 oldkey 初始密码

例如:dn=abc.com&enc=E&client=agent111&checksum=xxxxx&newkey=xxx&oldkey=xxxxx

POST 数据,必须进行URL编码

验证:client和POST的来源IP必须与该代理填写的地址一致

返回结果:

ret 返回结果 0错误 100成功 err 错误信息

key[1--N] 密码1-N//修改成功的密码 ret=0&oldkey=null ret=0&newkey=null 信息编码:

failkey[1--N] 密码1-N//修改失败的密码 auth-failure 认证失败 name-invalid 无效的域名

name-notexist 域名不存在或者域名不属于该代理 db-failure 数据库错误

password-invalid 新密码无效 oldkey-invalid 旧密码密码验证失败 keyname-invalid 属性名无效不能识别的 domain-auth-Failed 域名不是该代理所有

例如:ret=0&err=auth-failure

成功: ret=100&name=dfdaf.org&keyname=Password&key=xdsfd 失败: ret=0&name=dfdaf.org&keyname=MyDnsPass&key=xdsfd

3.8 ModifyContactor 接口

POST 地址: http://api.xinnet.com/domain/api.gb?method=ModifyContactor

http://api.xinnet.com/domain/api.gb?method=ModifyContactor&charset=utf-8 (utf-8字符集)

POST 参数: [域名信息]

dn 域名;1个,包括名字和后缀

enc 编码,E,G;1个;如果不填,模认为E client 代理号;1个 checksum MD5加密摘要

[注册所有人或注册单位的信息]

uname1 注册人中文单位名称[必须](可不送,修改忽略) uname2 注册人英文单位名称[必须](可不送,修改忽略)

uname3 注册单位拼音[.中国\\通用网址必须](可不送,修改忽略) uname4 注册单位缩写[.中国\\通用网址必须](可不送,修改忽略) location 注册人单位所在地[注册.中国\\通用网址必须] rname1 注册人|单位负责人中文名称[国内域名必须] rname2 注册人|单位负责人英文名称[国际域名必须]

ust 注册人英文国家名称,两个字母[CN表示中国],接口自动翻译中文 uprov 注册人英文省份名称, 如:Beijing,接口自动翻译中文 ucity1 注册人中文城市名称[国内域名必须] ucity2 注册人英文城市名称[国际域名必须] uaddr1 注册人中文地址[国内域名必须] uaddr2 注册人英文地址[国际域名必须] uzip 注册人邮政编码[必须]

utelc 注册人电话国家码,可以不填默认为86 utela 注册人电话区号,如果为手机可以不填 uteln 注册人电话号码 utele 注册人电话分机

ufaxc 注册人传真国家码,可以不填默认为86 ufaxa 注册人传真区号,如果为手机可以不填 ufaxn 注册人传真号码

ufaxe 注册人传真分机 uemail 注册人email地址

trade 注册人所在行业英文编码[如果不填,默认为商业S8]

[域名管理联系人信息] 管理联系人单位地址信息和注册人信息一致,所以不用填写

aname1 管理联系人中文名称[国内域名必填] aname2 管理联系人英文名称[国际域名必填] atelc 管理联系人电话国家码,可以不填默认为86 atela 管理联系人电话区号,如果为手机可以不填 ateln 管理联系人电话号码

atele 管理联系人电话分机,可以不填

afaxc 管理联系人传真国家码,可以不填默认为86 afaxa 管理联系人传真区号,如果为手机可以不填 afaxn 管理联系人传真号码

afaxe 管理联系人传真分机,可以不填 aemail 管理联系人电子邮件地址[必须]

说明:管理联系人和注册人的电话和传真必须保证一份为填写完整的。 否则,如果管理联系人电话传真缺少,将使用注册人的电话传真 如果注册人电话传真缺少,将使用管理联系人的电话传真

如果注册人没有email地址,将使用管理联系人的email地址 [技术联系人信息]

tname1 技术联系人中文名称[如果不填,默认为管理联系人] tname2 技术联系人英文名称[如果不填,默认为管理联系人] tunit1 技术联系人单位中文名称[如果不填,默认为管理联系人] tunit2 技术联系人单位英文名称[如果不填,默认为管理联系人]

tst 技术联系人英文国家名称,两个字母[CN表示中国],[如果不填,默认为管理联系人]

tprov 技术联系人英文省份名称, 如:Beijing,接口自动翻译中文,[如果不填,默认为管理联系人]

tcity1 技术联系人中文城市名称[如果不填,默认为管理联系人] tcity2 技术联系人英文城市名称[如果不填,默认为管理联系人] taddr1 技术联系人中文地址[如果不填,默认为管理联系人] taddr2 技术联系人英文地址[如果不填,默认为管理联系人] tzip 技术联系人邮政编码[如果不填,默认为管理联系人] temail 技术联系人电子邮件地址[如果不填,默认为管理联系人] ttelc 技术联系人电话国家码[如果不填,默认为管理联系人] ttela 技术联系人电话区号[如果不填,默认为管理联系人] tteln 技术联系人电话号码[如果不填,默认为管理联系人] ttele 技术联系人电话分机[如果不填,默认为管理联系人] tfaxc 技术联系人传真国家码[如果不填,默认为管理联系人] tfaxa 技术联系人传真区号[如果不填,默认为管理联系人] tfaxn 技术联系人传真号码[如果不填,默认为管理联系人] tfaxe 技术联系人传真分机[如果不填,默认为管理联系人] [交费联系人信息]

fname1 交费联系人中文名称[如果不填,默认为管理联系人] fname2 交费联系人英文名称[如果不填,默认为管理联系人] funit1 交费联系人单位中文名称[如果不填,默认为管理联系人] funit2 交费联系人单位英文名称[如果不填,默认为管理联系人]

fst 交费联系人英文国家名称,两个字母[CN表示中国],[如果不填,默认为管理联系人]

fprov 交费联系人英文省份名称, 如:Beijing,接口自动翻译中文,[如果不填,默认为管理联系人]

fcity1 交费联系人中文城市名称[如果不填,默认为管理联系人] fcity2 交费联系人英文城市名称[如果不填,默认为管理联系人] faddr1 交费联系人中文地址[如果不填,默认为管理联系人] faddr2 交费联系人英文地址[如果不填,默认为管理联系人] fzip 交费联系人邮政编码[如果不填,默认为管理联系人] femail 交费联系人电子邮件地址[如果不填,默认为管理联系人]

ftelc 交费联系人电话国家码[如果不填,默认为管理联系人] ftela 交费联系人电话区号[如果不填,默认为管理联系人] fteln 交费联系人电话号码[如果不填,默认为管理联系人] ftele 交费联系人电话分机[如果不填,默认为管理联系人] ffaxc 交费联系人传真国家码[如果不填,默认为管理联系人] ffaxa 交费联系人传真区号[如果不填,默认为管理联系人] ffaxn 交费联系人传真号码[如果不填,默认为管理联系人] ffaxe 交费联系人传真分机[如果不填,默认为管理联系人]

例如:enc=G&client=agent4978&dn=xinnet.com&checksum=36d1823da539765a66e408f670353ea6

.

POST 数据,都必须进行URL编码,否则中文信息将不正确

验证:client和POST的来源IP必须与该代理填写的地址一致 checksum=MD5(client+password+dn+uemail+aemail)

其他没有引号表示为POST参数变量,password为代理专区中设置的认证密码 client为客户号,dn为域名,aemail为管理联系人电子邮件,uemail注册联系人邮箱

返回结果:

ret 注册结果,0 失败,100成功 50 超时等待 info 正常的信息,1个 err 错误的信息,0-N个 返回信息:

格式: 操作/对象-结果 modctr-sucess 操作成功 name-notexist 域名不存在

domain-auth-Failed 域名不是该代理所有

例如: ret=100&info=modctr-sucess ret=0&err=auth-failure ret=0&err=name-notexist

ret=0&err=uname2-invalid&err=aemail-null&err=uaddr2-invalid&err=

3.9 注册本域名下的DNS

POST 地址: http://api.xinnet.com/domain/api.gb?method=AddSelfDNS

http://api.xinnet.com/domain/api.gb?method=AddSelfDNS&charset=utf-8 (utf-8字符集)

dn 域名;1个,包括名字和后缀

ns DNS名称,如ns1.xinnet.com中的ns1 ip IP地址

client 代理号;1个 checksum MD5加密摘要

checksum=MD5(\ns) password: 代理使用API的密码

例如:dn=abc.com&ds=ns1&ip=202.108.32.110&client=agent123&checksum=xxxxx

POST 数据,必须进行URL编码

验证:client和POST的来源IP必须与该代理填写的地址一致

返回结果:

ret 返回结果 0错误 100成功 err 错误信息 信息编码:

auth-failure 认证失败 ns-invalid 无效的dns ns-null dns为空 name-null 域名为空

name-invalid 无效的域名

name-notexist 域名不存在或者域名不属于该代理 client-null 代理编号为空 client-invalid 无效的代理编号 checksum-null 加密摘要为空 ip-null IP为空

ip-invalid 无效的IP地址 db-failure 数据库错误

domain-auth-Failed 域名不是该代理所有

例如:ret=0&err=auth-failure

成功: ret=100&dn=abc.com&ns=ns1

失败: ret=0&dn=null&ns=null&client=null

3.10 查询本域名下的DNS

POST 地址: http://api.xinnet.com/domain/api.gb?method=GetSelfDNS

http://api.xinnet.com/domain/api.gb?method=GetSelfDNS&charset=utf-8 (utf-8字符集)

dn 域名;1个,包括名字和后缀 client 代理号;1个 checksum MD5加密摘要

checksum=MD5(\n) password: 代理使用API的密码

例如:dn=abc.com&client=agent123&checksum=xxxxx

POST 数据,必须进行URL编码

验证:client和POST的来源IP必须与该代理填写的地址一致

返回结果:

ret 返回结果 0错误 100成功 err 错误信息 信息编码:

auth-failure 认证失败 name-null 域名为空

name-invalid 无效的域名

name-notexist 域名不存在或者域名不属于该代理 client-null 代理编号为空 client-invalid 无效的代理编号 checksum-null 加密摘要为空

domain-auth-Failed 域名不是该代理所有

例如:ret=0&err=auth-failure

成功: ret=100&dn=abc.com&ns1=ns1.abc.com&ip1=10.10.10.10&ns2=ns2.abc.com&ip2=20.20.20.20

失败: ret=0&dn=null&client=null

3.11 修改本域名下的DNS

POST 地址: http://api.xinnet.com/domain/api.gb?method=ModSelfDNS

http://api.xinnet.com/domain/api.gb?method=ModSelfDNS&charset=utf-8 (utf-8字符集)

dn 域名;1个,包括名字和后缀 ns DNS名称,如ns1.xinnet.com中的ns1

ip IP地址

client 代理号;1个 checksum MD5加密摘要

checksum=MD5(\ns) password: 代理使用API的密码

例如:dn=abc.com&ns=ns1&ip=202.108.32.110&client=agent123&checksum=xxxxx

POST 数据,必须进行URL编码

验证:client和POST的来源IP必须与该代理填写的地址一致

返回结果:

ret 返回结果 0错误 100成功 err 错误信息 信息编码:

auth-failure 认证失败 ns-invalid 无效的dns ns-null dns为空 name-null 域名为空

name-invalid 无效的域名

name-notexist 域名不存在或者域名不属于该代理 client-null 代理编号为空 client-invalid 无效的代理编号 checksum-null 加密摘要为空 ip-null IP为空

ip-invalid 无效的IP地址 domain-auth-Failed 域名不是该代理所有

例如:ret=0&err=auth-failure

成功: ret=100&dn=abc.com&ns=ns1.abc.com&ip=10.20.30.40 失败: ret=0&dn=null&client=null

3.12 删除本域名下的DNS

POST 地址: http://api.xinnet.com/domain/api.gb?method=DelSelfDNS

http://api.xinnet.com/domain/api.gb?method=DelSelfDNS&charset=utf-8 (utf-8字符集)

dn 域名;1个,包括名字和后缀 ns DNS名称,如ns1.xinnet.com中的ns1 client 代理号;1个 checksum MD5加密摘要

checksum=MD5(\ns) password: 代理使用API的密码

例如:dn=abc.com&ns=ns1&client=agent123&checksum=xxxxx POST 数据,必须进行URL编码

验证:client和POST的来源IP必须与该代理填写的地址一致

返回结果:

ret 返回结果 0错误 100成功 err 错误信息 信息编码:

auth-failure 认证失败 ns-invalid 无效的dns ns-null dns为空 name-null 域名为空

name-invalid 无效的域名

name-notexist 域名不存在或者域名不属于该代理 client-null 代理编号为空

client-invalid 无效的代理编号 checksum-null 加密摘要为空

domain-auth-Failed 域名不是该代理所有

例如:ret=0&err=auth-failure

成功: ret=100&dn=abc.com&ns1=ns1 失败: ret=0&dn=null&client=null

3.13 解析记录查询接口:

POST 地址: http://api.xinnet.com/domain/api.gb?method=DomainDNSQuery

http://api.xinnet.com/domain/api.gb?method=DomainDNSQuery&charset=utf-8 (utf-8字符 集)

? 描述:按照格式提供的域名和记录类型,返回当前域名在DNS库中对应的记录; ? 参数说明: name:域名名称; type:解析记录的类型; ? 发送信息格式:

查询NS记录:name=abc.com&type=NS ? 返回信息参数说明:

ret:返回值(100代表成功,110代表没有符合条件的记录); num:记录数量; name:域名;

client 代理号;1个

checksum MD5加密摘要

checksum=MD5(\+name) password: 代理使用API的密码

recordnamen:记录名;(其中“n”代表第多少条记录,n>=1,以下意义均同此!); type:域名解析记录类型(参数值为“prime-records”表示需要在domains表中添加初始解析记

录,ns,a,cname,mx,txt,url); contentn:解析内容 ttln:生存时间; prion:优先级;

reason:错误信息(操作成功则不会发送此参数!); domain-auth-Failed 域名不是该代理所有 ? 返回格式(参数前后顺序可以随意): 有记录的:

ret=100&num=2&name=abc.com&type=NS&recordname1=abc.com&recordname2=abc.com&content1=ns.xinnetdns.com&conten

t2=ns.xinnet.cn&ttl1=3600&ttl2=3600

没有记录的:ret=110&reason=没有符合条件的记录

3.14 解析记录添加接口:

POST 地址: http://api.xinnet.com/domain/api.gb?method=DomainDNSAdd

http://api.xinnet.com/domain/api.gb?method=DomainDNSAdd&charset=utf-8 (utf-8字符 集)

? 描述:按照给定内容和格式,添加域名相关的解析记录;需要先判定提供的域名是否已经在domains表中存在对应

记录,否则,执行最初始的添加解析记录操作。

? 参数说明:

name:域名名称; recordname:记录名;

type:域名解析记录类型(参数值为“prime-records”表示需要在domains表中添加初始解析记

录,ns,a,cname,mx,txt,url); content:解析内容; ttl:生存时间;

prio:优先级(默认为“0”); client 代理号;1个

checksum MD5加密摘要

checksum=MD5(\ame) password: 代理使用API的密码 ? 发送信息格式:

添加最初记录:name=abc.com&type=prime-records 添加NS记录(默认优先级设置):

name=abc.com&recordname=abc.com&type=NS&content=ns.xinnet.cn&ttl=3600&prio=0

添加A记录(默认优先级设置):

name=abc.com&recordname=www.abc.com&type=A&content=199.198.197.196&ttl=3600&prio=0

添加MX纪录(设定优先级):

name=abc.com&recordname=mail.abc.com&type=MX&content=mail.xinnet.com&ttl=3600&prio=5 ? 返回信息参数说明:

ret:返回值(100执行成功;120已有此记录;130参数内容有错误;140添加记

本文来源:https://www.bwwdw.com/article/y9x3.html

Top