我现在搞的域名查询正常,就是注册不行,老是提示:认证失败。 程序是在服务器上运行的,api的ip地址和密码都对的,可是为什么说认证失败呢? 因为查询可以,说明服务器的IP地址是和新网代理里设置的IP地址是一致的。搞过的帮我看下这样设置POST的参数对不对
---------
$checksum=MD5("Register"+"agent111111"+"654321"+$Domain+$aemail+$uname2); $w_URL = "http://api.xinnet.com/domain/api.gb?method=Register&charset=utf-8";//定义api接口的url$w_Parameters = "&checksum=" .$checksum. "&dn=" .$Domain. "&enc=E&client=agent111111&period=" .$Year. "&uname1=".urlencode($uname1)."&uname2=".$uname2."&rname2=".$uname2."&aname1=".urlencode($uname1)."&ust=CN&ucity2=".$ucity2."&uaddr2=".$uaddr2."&uzip=".$uzip."&aname2=".$aname2."&aemail=".$aemail."&uteln=".$uteln."&ufaxn=".$ufaxn;//定义POST相关参数//下面是用curl模拟post,省略了
---------
$checksum=MD5("Register"+"agent111111"+"654321"+$Domain+$aemail+$uname2); $w_URL = "http://api.xinnet.com/domain/api.gb?method=Register&charset=utf-8";//定义api接口的url$w_Parameters = "&checksum=" .$checksum. "&dn=" .$Domain. "&enc=E&client=agent111111&period=" .$Year. "&uname1=".urlencode($uname1)."&uname2=".$uname2."&rname2=".$uname2."&aname1=".urlencode($uname1)."&ust=CN&ucity2=".$ucity2."&uaddr2=".$uaddr2."&uzip=".$uzip."&aname2=".$aname2."&aemail=".$aemail."&uteln=".$uteln."&ufaxn=".$ufaxn;//定义POST相关参数//下面是用curl模拟post,省略了
http://www.cnblogs.com/taven/archive/2009/09/05/1560697.html
这个已经搜索过了,它给出的只是查询,我的查询可以正常使用,就是注册不行,奇怪怀疑是不是我的参数填写有误,但我就是按新网给的api文档里的搞的
代理平台的API IP绑定和API密码——这个肯定是对的,不会有错,查询可以,说明服务器的IP地址对,密码也是我单独设的,错不了。但是我按你的方法获取域名密码,结果提示:ret=0&name=null&key=null&err=auth-failure这个错误结果提示有三处错误:
1、域名是空的
2、查询域名属性也是空的
3、认证失败。对于这三个错误,我觉得很奇怪,我的代码如下,域名是有的,怎么返回结果是空的呢?而且查询域名属性也指明了啊。
$client = "agent123456";
$password = "123456";
$enc ="E";
$dn = "onsalesoftware.com";
$checksum=MD5("GetProductKey"+$client+$password+$dn+$enc); $w_URL = "http://api.xinnet.com/domain/api.gb?method=GetProductKey&charset=utf-8";//定义api接口的url
$w_Parameters = "&enc=E&client=agent123456&name=onsalesoftware.com&keyname=MyDnsPass&checksum=".$checksum; $curl = curl_init();//定义curl
curl_setopt($curl, CURLOPT_URL, $w_URL);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);//设置返回结果不直接显示
curl_setopt($curl, CURLOPT_POSTFIELDS, $w_Parameters);
$data = curl_exec($curl);
curl_close($curl); echo $data;
涉及到隐私,我将代理号和api密码用123456替换。
哦,明白了,原来是我犯了错误。MD5加密里的变量我用+,PHP变量之间应该用.连接的。难怪说认证错误呢
郁闷啊,
搞了好久也没找到什么问题
谁有注册成功的实例发到我邮箱里[email protected]
谢谢!