码迷,mamicode.com
首页 > 微信 > 详细

微信域名检测接口(含PHP、Python调用演示步骤)

时间:2019-12-07 19:34:18      阅读:110      评论:0      收藏:0      [点我收藏+]

标签:var   微信   content   last   curl   none   php   接口   代码   

微信域名检测接口是腾讯官方发布的api接口,调用检测接口即可返回域名在微信内的生存状态,如果已被拦截返回结果提示“域名被封”,如果未被拦截则返回结果提示“域名正常”。

 

微信域名检测接口(官方)

http://www.xiaocaoff.cn/weixin/check-api.php?url=http://www.baidu.com

 

接口使用说明

1、在线使用

将api接口地址中的 “http://www.baidu.com” 换成你需要检测的域名,然后复制地址前往浏览器粘贴打开即可返回结果。

2、接入接口

如果觉得在线使用很麻烦,或者需要实时查询,将接口接入到服务器代码中,设置返回参数,即可实时检测域名在微信内的状态。

 

PHP调用演示

 1 <?php
 2 // 需要检测的地址或域名
 3 
 4 $reqUrl = "http://www.baidu.com";
 5 
 6 $url = sprintf("http://www.xiaocaoff.cn/weixin/check-api.php?url=http://www.baidu.com",$reqUrl);
 7 
 8 $ch = curl_init($url);
 9 
10 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
11 
12 curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
13 
14 $responseBody = curl_exec($ch);
15 
16 $responseArr = json_decode($responseBody, true);
17 
18 if (json_last_error() != JSON_ERROR_NONE) {
19 
20     echo "JSON 解析接口结果出错\n";
21 
22     return;
23 
24 }
25 
26 if (isset($responseArr[‘code‘]) && $responseArr[‘code‘] == 0) {
27 
28     // 接口正确返回
29 
30     // $responseArr[‘data‘][‘status‘] 的取值范围:ok、blocked
31 
32     // ok 表示正常、blocked 表示被封
33 
34     printf("测试地址(%s)的状态为:%s\n", $reqUrl, $responseArr[‘data‘][‘status‘]);
35 
36 } else {
37 
38     printf("接口异常:%s\n", var_export($responseArr, true));
39 
40 }

 

Python调用演示

 1 def main():
 2 
 3     url = "http://www.xiaocaoff.cn/weixin/check-api.php"
 4 
 5     params = {
 6 
 7         "req_url" : "http://www.baidu.com", #需要检测的地址或域名
 8 
 9     }
10 
11     params = urlencode(params)
12 
13     f = urllib.urlopen("%s?%s" % (url, params))
14 
15  
16 
17     content = f.read()
18 
19     res = json.loads(content)
20 
21     if res:
22 
23         code = res["code"]
24 
25         if code == 0:
26 
27             #成功请求
28 
29             print res["result"]
30 
31         else:
32 
33             print "%s: %s" % (res["code"],res["msg"])
34 
35     else:
36 
37         print "request api error"
38 
39  
40 
41 if __name__ == __main__:
42 
43     main()

 

注意事项:

1、调用api接口时,只需将 “http://www.baidu.com”替换成需要检测的域名即可。

2、API接口支持域名中带参数,当域名中出现 & 符号时,要用 %26 代替(或者使用url编码格式),否则可能会导致返回结果不准确。

3、域名必须要以http(s)://开头,否则可能会导致返回失败或者无法查询等问题。

4、上文提到的API接口,本人使用大半年了,一直是比较稳定的,大家可以试试,觉得不错记得收藏一下,以免丢失找不到。

 

常见问题:

1、为什么接口返回结果与实际不符?

答:域名的携带的特殊字符没有进行编码,导致参数没有生效;或者是因为待检测的域名没有以http(s)://开头。

2、接口没有返回结果,是什么情况?

答:有些时候接口返回数据有延迟,超时了则会返回失败,返回参数即为空;或者是调用方法不对,详情可见上文接口调用演示。

3、接入接口,最快每秒检测几次?

答:接口最高支持6次/秒无间断检测,2秒内返回结果。

微信域名检测接口(含PHP、Python调用演示步骤)

标签:var   微信   content   last   curl   none   php   接口   代码   

原文地址:https://www.cnblogs.com/ctsn/p/12002854.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!