欢迎光临
我们一直在努力

开源PHP查询域名是否注册API源码

开源PHP查询域名是否注册API源码-同济互联

前言

因为最近的CC域名可以备案了,去网上扫好一点的域名玩,发现手动效率太低了,无法自动检测想要的域名是否能备案,所以抓了网上云计算页面的接口做成PHP的API来检测域名是否可以注册,我这里是抓取的华为云的API,然后用PHP做成自己的API调用。

调用方法

domain.php?domain=tjit.net

说明:

  1. domain.php是php执行文件名
  2. ?后面是需要的参数
  3. 参数domain是GET参数,tjit.net是参数值/即要查询的域名

例程:

查询tjit.net是否已注册:

  1. 请求方式:GET
  2. 发起GET请求:域名/domain.php?domain=tjit.net

返回数据(JSON_UTF-8):

{"code":400,"msg":"已注册"}

如果要查询的域名未注册:

{"code":200,"msg":"未注册"}

开发者可根据返回数据的code来判断是否可以注册。

API源码

<?php
/**
* 查询域名是否注册 - API
*
* @author 小伟<blog@tjit.net>
* @copyright 同济互联
* @link https://www.tjit.net
* @date 2020年7月24日
*/
ini_set("display_errors", "Off");
error_reporting(E_ALL^E_NOTICE^E_WARNING);
header("content-type:application/json");
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept');

if (!empty($_GET["domain"])) {
$data = curl_post($_GET["domain"]);
$arr = json_decode($data);
if ($arr->availability == true) {
exit(json_encode(["code" => 200, "msg" => "未注册"], JSON_UNESCAPED_UNICODE));
} else {
if ($arr->availability == false and empty($arr->code)) {
exit(json_encode(["code" => 400, "msg" => "已注册"], JSON_UNESCAPED_UNICODE));
}
if ($arr->code == "DOMAIN.030001") {

exit(json_encode(["code" => 404, "msg" => "不支持的域名类型"], JSON_UNESCAPED_UNICODE));
}
if ($arr->code == "DOMAIN.010029") {

exit(json_encode(["code" => 404, "msg" => "域名不正确"], JSON_UNESCAPED_UNICODE));
}
}
} else {
exit(json_encode(["code" => 404, "msg" => "domain参数不能为空"], JSON_UNESCAPED_UNICODE));
}

function curl_post($domain) {
$post_data = array(
"domain_name" => $domain
);
$header = array(
"Content-Type: application/json",
"Referer: https://activity.huaweicloud.com/domain1.html",
"Host: domain.myhuaweicloud.com",
"Origin: https://activity.huaweicloud.com",
"User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36"
);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "https://domain.myhuaweicloud.com/v1/domains/check");
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($post_data));
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_TIMEOUT, 10);
$data = curl_exec($curl);
curl_close($curl);
return $data;
}
赞(6) 打赏
未经允许不得转载:同济互联 » 开源PHP查询域名是否注册API源码
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

同济互联 建站更专业 更方便

网站建设联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏