首页 > 移动开发 > 微信开发 > 微信域名防封检测的技术原理及实现方式
微信域名防封主要是通过技术手段来实现预防措施,网络上的什么不死域名完全是无稽之谈,没有哪家是可以做到完全防封的。
所以主要的还是让自己的域名推广效果更好一点,别被封了都不知道,以至于损失惨重。
想要继续在微信中做推广,做好域名防封工作是非常有必要的,否则域名一旦被封,自己却未能及时知晓,从而得不到及时处理,损失可想而知。
由此可见,做微信推广,一个能实时检测域名是否被微信屏蔽拦截的 API 接口是绝对必不可少的。
下面就简单介绍一下微信域名防封检测的技术原理及实现方式
原理
使用 Wireshark 抓包获取微信的域名拦截查询接口。
域名有如下几种状态:
Demo
PHP 版
<?php
// 您的 API Token ,在用户中心可查询到
$apiToken = "********************************" ;
// 需要检测的地址或域名
$reqUrl = "www.qq.com" ;
$url = sprintf( "https://wx.horocn.com/api/v1/wxUrlCheck?api_token=%s&req_url=%s" , $apiToken, $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 版
# -*- coding: utf-8 -*-
import json, urllib
from urllib import urlencode
def main ():
# 您的 API Token ,在用户中心可查询到
apiToken = "*********************"
url = "https://wx.horocn.com/api/v1/wxUrlCheck"
params = {
"req_url" : "www.qq.com" , # 需要检测的地址或域名
"api_token" : apiToken,
}
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 :
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69975818/viewspace-2699180/ ,如需转载,请注明出处,否则将追究法律责任。