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

 更新时间:2019年12月08日 09:25:22   作者:Nongsini  
这篇文章主要介绍了微信域名检测接口调用演示步骤(含PHP、Python),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

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

微信域名检测接口(官方)
http://www.xiaocaoff.cn/weixin/check-api.php?url=http://www.baidu.com

接口使用说明

1、在线使用

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

2、接入接口

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

PHP调用演示

<?php
// 需要检测的地址或域名

$reqUrl = "http://www.baidu.com";

$url = sprintf("http://www.xiaocaoff.cn/weixin/check-api.php?url=http://www.baidu.com",$reqUrl);

$ch = curl_init($url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);

$responseBody = curl_exec($ch);

$responseArr = json_decode($responseBody, true);

if (json_last_error() != JSON_ERROR_NONE) {

 echo "JSON 解析接口结果出错\n";

 return;

}

if (isset($responseArr['code']) && $responseArr['code'] == 0) {

 // 接口正确返回

 // $responseArr['data']['status'] 的取值范围:ok、blocked

 // ok 表示正常、blocked 表示被封

 printf("测试地址(%s)的状态为:%s\n", $reqUrl, $responseArr['data']['status']);

} else {

 printf("接口异常:%s\n", var_export($responseArr, true));

}

Python调用演示

def main():

 url = "http://www.xiaocaoff.cn/weixin/check-api.php"

 params = {

  "req_url" : "http://www.baidu.com", #需要检测的地址或域名

 }

 params = urlencode(params)

 f = urllib.urlopen("%s?%s" % (url, params))

 

 content = f.read()

 res = json.loads(content)

 if res:

  code = res["code"]

  if code == 0:

   #成功请求

   print res["result"]

  else:

   print "%s: %s" % (res["code"],res["msg"])

 else:

  print "request api error"

 

if __name__ == '__main__':

 main()

注意事项:

1、调用api接口时,只需将 “http://www.baidu.com”替换成需要检测的域名即可。
2、API接口支持域名中带参数,当域名中出现 & 符号时,要用 %26 代替(或者使用url编码格式),否则可能会导致返回结果不准确。
3、域名必须要以http(s)://开头,否则可能会导致返回失败或者无法查询等问题。
4、上文提到的API接口,本人使用大半年了,一直是比较稳定的,大家可以试试,觉得不错记得收藏一下,以免丢失找不到。

常见问题:

1、为什么接口返回结果与实际不符?
答:域名的携带的特殊字符没有进行编码,导致参数没有生效;或者是因为待检测的域名没有以http(s)://开头。

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

3、接入接口,最快每秒检测几次?
答:接口最高支持6次/秒无间断检测,2秒内返回结果。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • JavaScript实现简易计算器案例

    JavaScript实现简易计算器案例

    这篇文章主要为大家详细介绍了JavaScript实现简易计算器案例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下<BR>
    2022-07-07
  • JavaScript中的闭包原理分析

    JavaScript中的闭包原理分析

    一看到闭包这个词,我就会想起线性代数中的封闭空间,也就是说,这个空间中的所有向量,无论经过何种运算,最终结果还是会落在该空间中。那么JavaScript中会不会也是类似的概念呢?
    2010-03-03
  • 微信小程序局部刷新触发整页刷新效果的实现代码

    微信小程序局部刷新触发整页刷新效果的实现代码

    这篇文章主要介绍了微信小程序局部刷新触发整页刷新效果的实现代码,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-11-11
  • js的[defer]和[async]属性

    js的[defer]和[async]属性

    这篇文章主要介绍了js的<script>的[defer]和[async]属性,需要的朋友可以参考下
    2014-11-11
  • 一文教你如何优雅的使用WebSocket

    一文教你如何优雅的使用WebSocket

    WebSocket最大特点就是服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送技术的一种,下面这篇文章主要给大家介绍了关于如何优雅的使用WebSocket的相关资料,需要的朋友可以参考下
    2022-05-05
  • 微信小程序生成海报分享朋友圈的实现方法

    微信小程序生成海报分享朋友圈的实现方法

    利用微信强大的社交能力通过小程序达到裂变的目的,拉取新用户。下面小编给大家带来了微信小程序生成海报分享朋友圈的实现方法,感兴趣的朋友跟随小编一起看看吧
    2019-05-05
  • freemarker判断对象是否为空的方法

    freemarker判断对象是否为空的方法

    FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出,用FreeMarker判断对象是否为空的方法大家知道吗,这篇文章就针对这个知道点做介绍,需要的朋友可以参考下
    2015-08-08
  • innerHTML中标签可以换行的方法汇总

    innerHTML中标签可以换行的方法汇总

    本文给大家分享的是一个在javascript中使用innerhtml输出的时候如何实现换行的小技巧,其实很简单,在需要换行的地方加上\即可
    2015-08-08
  • JS实现可视化音频效果的实例代码

    JS实现可视化音频效果的实例代码

    这篇文章主要介绍了JS实现可视化音频效果的实例代码,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-01-01
  • 微信公众号生成新浪短网址的实现(快速生成)

    微信公众号生成新浪短网址的实现(快速生成)

    这篇文章主要介绍了微信公众号生成新浪短网址的实现(快速生成),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08

最新评论