新网域名查询和注册API接口类源码
最近公司要做一个基于新网的API,在自己的系统中实现实时查询域名注册情况,并且要能实时注册,注册费用自动从我们的代理帐户中扣除,下面是我写的核心实现类代码:public class XinNetApiBase{//默认代理编号public readonly static string AgentID = "agent88888";private Encoding _WebEncode = Encoding.GetEncoding("UTF-8");private string _RequestString;private string _Result;private string _RequestUrl;private WebClient _EWebClient = new WebClient();///<summary>///处理编码///</summary>public Encoding WebEncode{get { return _WebEncode; }set { _WebEncode = value; }}///<summary>///请求的查询参数///</summary>public string RequestString{get { return _RequestString; }set { _RequestString = value; }}///<summary>///请求返回的结果///</summary>public string Result{get { return _Result; }set { _Result = value; }}///<summary>///请求的URL地址///</summary>public string RequestUrl{get { return _RequestUrl; }set { _RequestUrl = value; }}///<summary>///客户端与服务器通信类///</summary>public WebClient EWebClient{get { return _EWebClient; }set { _EWebClient = value; }}public XinNetApiBase(ApiType _apitype, List<QueryParam> _list){this.RequestUrl = GetApiUrl(_apitype);this.RequestString = GetRequestString(_list);this.GetHttp();}public XinNetApiBase(string _ApiUrl, List<QueryParam> _list) {this.RequestUrl = _ApiUrl;this.RequestString = GetRequestString(_list);}public string GetRequestString(List<QueryParam> list){string requestUrl = "";foreach (QueryParam q in list){requestUrl += q.QueryName + "=" + HttpUtility.UrlEnco de(q.QueryValue, this.WebEncode) + "&";}return requestUrl.TrimEnd('&');}public string GetHttp(){this.EWebClient.Headers.Add(HttpRequestHeader.ContentTyp e, "application/x-www-form-urlencoded");this.EWebClient.Encoding = this.WebEncode;this.Result = this.EWebClient.UploadString(new Uri(this.RequestUrl), "POST", this.RequestString);return this.Result;}public string GetApiUrl(ApiType _ApiType){string _Url = "";switch (_ApiType){case ApiType.Check:_Url = "/domain/api.gb?metho d=check&charset=utf-8";break;case ApiType.Register:_Url = "/domain/api.gb?metho d=Register&charset=utf-8";break;case ApiType.Status:_Url = "/domain/api.gb?metho d=Status&charset=utf-8";break;case ApiType.ModDns:_Url = "/domain/api.gb?metho d=ModDns&charset=utf-8";break;case ApiType.domain:_Url = "/domain/api.gb?metho d=DomainRenew&charset=utf-8";break;case ApiType.GetProductKey:_Url = "/domain/api.gb?metho d=GetProductKey&charset=utf-8";break;case ApiType.ChangeProductKey:_Url = "/domain/api.gb?metho d=ChangeProductKey&charset=utf-8";break;case ApiType.ModifyContactor:_Url = "/domain/api.gb?metho d=ModifyContactor&charset=utf-8";break;default:_Url = "/domain/api.gb?metho d=testmd5&charset=utf-8";break;}return _Url;}///<summary>/// MD5加密///</summary>///<param name="_ConvertString">加密的内容</param>///<param name="_Len">16或32 表示16位或32位</param>///<returns></returns>public static string MD5(string _ConvertString, int _Len){using (System.Security.Cryptography.MD5CryptoServiceProvi der provider = new System.Security.Cryptography.MD5CryptoServiceProvi der()){switch (_Len){case16:return BitConverter.ToString(pute Hash(Encoding.UTF8.GetBytes(_ConvertString)), 4, 8).Replace("-", stri ng.Empty).ToUpper(System.Globalization.CultureInfo.CurrentCulture);case32:return BitConverter.ToString(pute Hash(Encoding.UTF8.GetBytes(_ConvertString))).Replace("-", string.Emp ty).ToUpper(System.Globalization.CultureInfo.CurrentCulture);default:return BitConverter.ToString(pute Hash(Encoding.UTF8.GetBytes(_ConvertString))).Replace("-", string.Emp ty).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<QueryParam> param = new List<QueryParam>();param.Add(new QueryParam("name", "viqiwu"));param.Add(new QueryParam("enc", "E"));param.Add(new QueryParam("suffix", ".com"));param.Add(new QueryParam("suffix", ""));param.Add(new QueryParam("suffix", ".cn"));param.Add(new QueryParam("client", "agent88888"));XinNetApiBase _XinNet = new XinNetApiBase(ApiType.Chec k, param);Response.Write(_XinNet.Result);//_XinNet.Result 返回的结果 num=3&enc=E&name1=&c hk1=0&name2=&chk2=100&name3=&chk3=0//chk1=0 表示不能注册了 chk1=100 表示可以注册下面是官方API说明文档:Xinnet Corp. 北京新网数码信息技术有限公司POST参数注意事项:所有电话号码及邮编必须为数字,且不能为零所有英文信息字段必须为本接口暂时不支持信任制代理1. 文档说明1.1 文档简介本版本采用HTTP+POST方式进行注册。
api接口文档模板
接口文档说明
1 接口参考 (1)
1.1 登陆 (1)
1.2 登陆接口 (1)
1 接口参考
1.1登陆
1.2登陆接口
1.2.1.1接口说明
1.2.1.1 请求说明
1.2.1.2 参数特殊说明
比如有签名认证的,toke n的,特殊加密算法说明等比如有签名认证的, token的,特殊加密算法说明等比如有签名认证的,token的,特殊加密算法说明等比如有签名认证的,toke n的,特殊加密算法说明等比如有签名认证的, token的,特殊加密算法说明等比如有签名认证的,token的,特殊加密算法说明等比如有签名认证的,toke n的,特殊加密算法说明等比如有签名认证的, token的,特殊加密算法说明等比如有签名认证的,token的,特殊加密算法说明等比如有签名认证的,token的,特殊加密算法说明等。
121.3 url 说明
此接口是登录接口,用于客户登录使用此接口是登录接口,用于客户登录使用接口是登录接口,用于客户登录使用此接口是登录接口,用于客户登录使用接口是登录接口,用于客户登录使用此接口是登录接口,用于客户登录使用接口是登录接口,用于客户登录使用此接口是登录接口,用于客户登录使用接口是登录接口,用于客户登录使用此接口是登录接口,用于客户登录使用接口是登录接口,用于客户登录使用此接口是登录接口,用于客户登录使用。
121.4 返回说明
121.5 返回示例
{
"code" :200,
"msg":"登录成功",
"data" :{
"username":"测试账号"
}
}。
API第四方接口支付程序源码介绍与优势
API第四方接口支付程序源码
锋锐程序
什么是Api接口平台?
API接口程序可以整合其他第三方通道另外下发接口给下面商户使用的程序叫做API接口程序。
类似易宝,支付宝,智付这些第三方支付公司,他们可以提供接口文档给下级商户。
下级商户可以把易宝的接口文档,集成到自己的网站里,这样自己的网站就可以和易宝实现对接。
其功能就是下发接口。
其功能如下:
1.可同时提供网银,点卡,财付通,支付宝,微信支付等多种充值渠道。
2.真正傻瓜式支付接口,提供安装程序、示例程序,只需简单设置即可使用。
3.设置商户密钥,支付信息加密传递,加强支付安全性,加密系统与其他支付平台兼容
4.提供完善的后台管理系统,提供订单管理、订单统计查询、用户资料修改、商户密钥设置、及技术支持等功能。
5.您可以登录后台管理系统查看订单以下信息:订单号、用户支付金额、商户所得金额、自定义订单号、支付日期、结帐信息等。
支持功能定制。
第四方支付是相对第三方而言的,作为对第三方支付平台服务的拓展。
第三方支付介于银行和商户之间,而第四方支付是介于第三方支付和商户之间,没有支付许可牌照的限制。
第四方支付集中了各种三方支付平台的接口,也就是说集合了各个第三方支付的优势,能够根据商户的需求进行个性化定制,形成支付通道资源互补优势,满足商户需求,提供适合商户的支付解决方案。
总体来讲,第四方支付属于支付服务集成商,具有第三方支付无可比拟的灵活性,便捷性和支付服务互补性。
而且第四方支付比第三方支付更具中立性优势,可以一定程度上调和目前第三方支付恶意竞争的状况,保证支付行业健康发展。
完整注册登陆php源码,附带session验证。
完整注册登陆php源码,附带session验证。
1、⾸先先写表单页⾯login.html.<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>⽤户登陆</title></head><!-- 定义输⼊表单样式 --><style type="text/css">html{font-size: 12px;}fieldset{width:200px;margin:0 auto;}legend{font-weight: bold; font-size: 14px;}label{float:left; width:70px; margin-left:10px;}.left{margin-left:80px;}.input{width:150px;}span{color: #666666;}</style><!-- 验证表单是否输⼊ --><script type="text/javascript">function InputCheck(LoginForm){if(ername.value==''){alert('请输⼊⽤户名!');ername.focus();return (false);}if(LoginForm.password.value==''){alert('请输⼊密码!');LoginForm.password.focus();return (false);}}</script><body><div><fieldset><legend>⽤户登陆</legend><form name="LoginForm" method="post" action="login.php" onSubmit="return InputCheck(this)"><p><lable for="username" class="lable">⽤户名:</lable><input id="username" name="username" type="text" class="input" /></p><p><lable for="password" class="lable">密 码:</lable><input id="password" name="password" type="text" class="input" /></p><p><input name="submit" value="提交" type="submit" /> <a href="reg.html">点此注册</a></p></form></fieldset></div></body></html>2、然后写登陆源码。
HttpClient源码分析
HttpClient源码分析/*** 此接⼝仅代表HTTP请求执⾏的最基本约定。
* 它对请求执⾏过程没有任何限制或特定的细节,并将状态管理、⾝份验证和重定向处理的细节留给单个实现。
*/public interface HttpClient {HttpResponse execute(HttpUriRequest request);}/*** ⽤于提供创建{@link CloseableHttpClient}实例⼯⼚⽅法.*/public class HttpClients {public static CloseableHttpClient createDefault() {return HttpClientBuilder.create().build();}}/*** HTTP消息包括从客户机到服务器的请求和从服务器到客户机的响应。
* HTTP-message = Request | Response ; HTTP/1.1 messages** {@link HttpRequest} and {@link HttpResponse} 接⼝继承{@link HttpMessage }*/public interface HttpMessage {}/*** 从客户机到服务器的请求消息包括,* 在该消息的第⼀⾏中,要应⽤于该资源的⽅法、资源的标识符以及正在使⽤的协议版本。
* method uri http/1.1*/public interface HttpRequest extends HttpMessage {RequestLine getRequestLine(); // 获取请求⾏}/*** 在接收和解释请求消息后,服务器⽤HTTP响应消息响应。
* 设置/获取状态⾏、状态码、原因短语、实体、locale*/public interface HttpResponse extends HttpMessage {}/*** Extended version of the {@link HttpRequest} interface that provides convenience methods to access request properties such as request URI and method type. * {@link HttpRequest}接⼝的扩展版本,提供访问请求属性(如请求URI和⽅法类型)的⽅便⽅法。
用PHP快速接入快递单号API查询接口源码方法
用PHP快速接入快递单号API查询接口源码方法背景最近进行网站后台开发,需要实现物流的即时查询,发现之前集成的【PHP快递查询源码资源】已经不能正常使用了;为了方便以后的业务需求,经过比较,最后选择使用第三方物流快递鸟接口查询。
同时,在此进行整理,希望能帮到有需求的朋友们,谢谢…以中通快递为例,其他快递查询类似。
开发步骤①. 前期准备首先要进行快递鸟账号的注册并根据的要求,完善用户申请。
然后,根据自己的需求,开通所需服务(如果只是进行物流信息的查询,以当前业务查询次数较少为例):②. 集成类的使用首先需要登录快递鸟获取账号的用户ID 和API key 对所提供源码中的集成类BirdExpress.php ,进行配置项的替换操作然后将集成类整合到你的项目框架,根据框架规则进行必要修改(框架不同规则自然多数不同,本人为ThinkPHP5.1.2)下图为简单的调用测试:③. 核心处理方法源码首先,官方的代码demo获得的物流信息是正序展示的为了方便物流信息的倒序展示,我进行了对数组Traces 的反转操作④. [重要]: 代码逻辑梳理,以及整体业务设计构化通过上面核心源码的展示,你应该会注意到调用其方法,必须要传入快递公司编码和物流单号这两个参数好在,官方提供了快递公司编码,所以,鄙人的设计思路如下:1. 根据得到的快递公司编码Excel表取出其中的"快递公司"和"编码"两列数据存储到本地数据表2. 在后台操作人员输入快递单号时同时要求选择快递公司,获得"编码"从而保证,在数据表中,存储的快递单号唯一匹配到一个编码,继而方便后面进行快递信息查询时,可同时获得所需的两个参数.⑤. 效果展示截图对于业务量前期不大的网站足够使用,即便后期有需要,也可以直接进行套餐升级。
php开发api接口的实例代码
标题:PHP开发API接口的实例代码一、什么是API接口?API是应用程序接口(Application Programming Interface)的缩写,是软件系统间相互通信的一种方式。
API接口可以让不同的软件系统之间实现数据交换和功能调用,是现代软件开发中非常重要的一部分。
二、 PHP开发API接口的必要性1. 实现与其他系统的数据交换和功能调用2. 提高软件系统的可扩展性和灵活性3. 改善软件系统的易用性和用户体验三、 PHP开发API接口的基本步骤1. 设计接口的请求和响应数据结构在设计API接口时,需要确定接口的请求参数和响应数据的格式,包括数据类型、数据结构和数据校验规则等。
2. 编写接口的处理逻辑在PHP中,可以通过编写接口处理逻辑来实现API接口的功能。
接口的处理逻辑通常包括对请求参数的验证、业务逻辑的处理和返回响应数据等步骤。
3. 部署API接口部署API接口时,需要将编写好的接口处理逻辑部署到服务器上,并确保接口可以被外部系统访问。
四、 PHP开发API接口的实例代码下面通过一个简单的示例来演示如何使用PHP开发一个API接口。
1. 设计接口的请求和响应数据结构假设我们要开发一个获取用户信息的API接口,请求参数为用户ID,响应数据包括用户ID、用户名和电流信箱。
根据这个需求,我们可以设计如下的接口请求和响应数据结构:请求参数:- user_id:用户ID(整型,必填)响应数据:- user_id:用户ID(整型)- username:用户名(字符串)- email:电流信箱(字符串)2. 编写接口的处理逻辑接下来,我们可以编写PHP代码来处理这个API接口的功能。
以下是一个简单的示例代码:```php<?php// 接口请求处理逻辑if(isset($_GET['user_id'])){$user_id = $_GET['user_id'];// 根据用户ID查询用户信息,这里使用假数据作为示例$user_info = array('user_id' => $user_id, 'username' => '张三', 'email' => 'zhangsan@example');// 返回响应数据echo json_encode($user_info);} else {// 如果没有传入用户ID,则返回错误信息echo json_encode(array('error' => '缺少参数user_id'));}>```3. 部署API接口我们需要将编写好的接口处理逻辑部署到服务器上。
域名查询api配置流程
域名查询api配置流程
域名查询API(也称为DNS API)是一个允许用户查询域名信息的应用程序接口。
下面是配置域名查询API的一般步骤:
1. 选择一个DNS提供商:首先,你需要选择一个可靠的DNS提供商,如Dyn、DNSMadeEasy、亚马逊的Route 53等。
这些提供商都提供API来查询域名信息。
2. 获取API密钥:大多数DNS提供商会要求你注册账号并获取API密钥。
这个密钥将用于身份验证,确保只有授权的用户可以查询域名信息。
3. 了解API文档:查阅所选DNS提供商的API文档,了解如何使用API来查询域名信息。
这些文档通常会提供详细的API调用示例和参数说明。
4. 编写代码:根据你的需求和所选的编程语言,编写代码来调用API。
通常,你需要使用HTTP请求来调用API,并传递必要的参数,如域名和API密钥。
5. 测试和调试:在正式部署之前,测试你的代码以确保它可以正确地查询域名信息。
如果遇到问题,查阅API文档或联系DNS提供商的支持团队寻求
帮助。
6. 部署和监控:一旦你的代码经过测试并验证无误,你可以将其部署到生产环境。
同时,设置监控机制以确保API的正常运行和域名查询的准确性。
7. 定期更新和维护:随着时间的推移,可能需要更新API密钥或调整代码以适应DNS提供商的更改。
保持对API文档的关注,并定期检查和更新你的代码。
请注意,具体的配置步骤可能会因所选的DNS提供商和编程语言而有所不同。
因此,建议参考所选DNS提供商的官方文档以获取详细的配置指南。
新网域名管理接口说明
ucity2 注册人英文城市名称 [国际域名必须]
uaddr1 注册人中文地址 [国内域名必须]
参数:strbuf
输出:strbuf内容及编码后的md5串
中文编码使用gb2312 或者utf-8编码,否则易出现md5校验错误:verify-failure 摘要认证失败
关于此处说明:请确保相关程序文件的charset设置和文件自身保存的编码一致。
并请保证所有关联文件编码一致,您明确要求不一致(需转码)的除外
corporation 公司或社团法人
cooperative 合作社
partnership 合伙或集体公司
government 政府机关
politicalParty 政党或工会
society 信托管理机构﹑资产管理机构﹑协会或社团
ufaxe 注册人传真分机
uemail 注册人email地址
trade 注册人所在行业英文编码 [如果不填,默认为商业S8]//此字段最好不填,如果填写,千万不能用小写S
删除本域名下的DNS:删除本域名下的DNS。
2.2 认证方式
1。IP限制,对于任何接口必须从该代理授权的IP,每个代理限填3个IP地址
2。MD5非可逆加密摘要,除Check接口、和Status接口外,其它所有接口都要求提供
2.3 返回结果
返回结果: num 域名数量
enc 编码
name[1--N] 域名,名字+后缀 N=num
chk[1--N] N=num 查询结果: 0 不可注册 100 可以注册
例如:name=abc&enc=E&suffix=.com&suffix=.net&suffix=.cn&client=agent111
API模块源码大全.ec(500多个)
.DLL命令 GetDIBits, 整数型, , "GetDIBits"
.参数 aHDC, 整数型
.参数 hBitmap, 整数型
.参数 nStartScan, 整数型
.参数 nNumScans, 整数型
.参数 lpBits, 字节型, 传址
.参数 lpBI, 字节型, 传址
.DLL命令 CreateCompatibleBitmap, 整数型, , "CreateCompatibleBitmap"
.参数 hdc, 整数型
.参数 width, 整数型
.参数 height, 整数型
.DLL命令 CreateCompatibleDC, 整数型, , "CreateCompatibleDC"
.参数 pChoosecolor, ChooseColor, 传址
.DLL命令 GetWindowWord, 整数型, , "GetWindowWord"
.参数 hwnd
.参数 nIndex
.DLL命令 API_发送内容, 整数型, "user32", "SendMessageA", , 调用一个窗口的窗口函数,将一条消息发给那个窗口。除非消息处理完毕,否则该函数不会返回。SendMessageBynum, ; SendMessageByString是该函数的“类型安全”声明形式 由具体的消息决定
.参数 GDI对象句柄, 整数型
.DLL命令 SelectObject, 整数型, , "SelectObject"
.参数 hdc, 整数型
.参数 obj, 整数型
PHP简单注册源代码
php简单用户注册程序第一步:首先做一个如下页面。
<html><head><title>申请帐号</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><style type="text/css"><!--.p11 { font-size: 10pt; color: #000000; text-decoration: none} .c3a {font-size: 9pt; color: #000000; background-color: #ffffff; border: 1 solid #ff9900}--></style></head><body bgcolor="#FFFFFF" topmargin="0"><table width="440" border="0" cellspacing="0" cellpadding="0" align="center"><form method="post" action="zc.php"><tr><td width="230"><img src="/images/login.gif" width="200" height="30"></td> <td width="210" class="p11" valign="bottom"><font color="#FF6699">*</font>为必填项</td></tr></table><table width="440" border="1" cellspacing="0" cellpadding="0" align="center" bgcolor="#eeeeee" b ordercolordark="#eeeeee" bordercolorlight="#ffcf60"><tr><td colspan="2"><table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td width="56%"><table width="100%" border="0" cellspacing="0" cellpadding="0" align="center" height="170"><tr><td width="111" class="p11"><div align="right">用户名:</div></td><td width="207" class="p11"><input type="text" name="name" size="20" class="c3a"><span class="p11"><font color="#FF6699">*</font></span> </td></tr><tr><td width="111" class="p11"><div align="right">密码:</div></td><td width="207" class="p11"><input type="password" name="word" size="20" class="c3a"><span class="p11"><font color="#FF6699">*</font></span> </td></tr><tr><td width="111" class="p11"><div align="right">确认密码:</div></td><td width="207" class="p11"><input type="password" name="pass" size="20" class="c3a"><span class="p11"><font color="#FF6699">*</font> </span></td></tr><tr><td width="111" height="29" class="p11"><div align="right">提示问题:</div></td><td width="207" height="29" class="p11"><input type="text" name="ask" size="20" class="c3a"></td></tr><tr><td width="111" height="28" class="p11"><div align="right">答案提示:</div></td><td width="207" height="28" class="p11"><input type="text" name="answer" size="20" class="c3a"></td></tr><tr><td colspan="2"><div align="center"><input type="submit" name="Submit" value="下一步" style="font-size: 10pt;color: #EFF B00; background-color: rgb(225,153,0)"><input type="reset" name="Submit2" value="重来" style="font-size: 10pt;color: #EFFB0 0; background-color: rgb(225,153,0)"></div></td></tr></table></td><td width="44%"><div align="center"><img src="/images/login1.gif" width="120" height="90"></div></td></tr></table></td></tr></form></table></body></html>第二步:注册执行程序。
