微信域名屏蔽检测接口 微信域名检测接口工具 前段时间搞一个需求,是这样的,在微信中分享文章(广告),会被微信封,为了保证一个域名都能访问,需要检测是否被封,被封后就将该域名删除。为了防止被封,做了三级的域名跳转,一级使用一些必究权威网站的url跳转漏洞,二级用我们自己的,三级使用最终的广告域名。 起初以为会是web微信,或者微信公众号开发平台的某些位置能够检测,结果都失败了,检测不精确。后来回头测试上面的那个网站。在三台不同ip的电脑,同时检测域名时,只有一个能检测成功,或者一个都没成功。证明不能做并发操作。 于是就大概知道原理了。在微信客户端中模拟用户点击操作,查看是否被封。具体思路如下。 我使用的是天天模拟器(必须使用手机的微信,在pc端的微信中,.top和.wang的域名时检测不了的),php作为后端服务器,用易语言从后端获取需要检测的域名,模拟复制到微信中发送后,点击域名打开,然后用易语言的找图功能,找红色感叹号的图,如果找到,说明域名被封,检测被封后请求后端删除地址。 ps:关于url跳转漏洞,相对大的网站,可能会在微信白名单里面,不容易被封,url跳转漏洞的网站很多,也很容易找,具体怎么找。。。就不多说了。 关于并发操作,如果想做成接口对外开放,就要有足够多的并发。思路:建议使用nodejs,php,python也都可以,看个人喜好吧。 易语言使用服务器组件,监听一个端口。在服务器接收到查询请求时,提交给易语言,模拟器多开,使用多线程,就能同时检测多个域名了。 具体方案就是屏蔽掉违规内容,让腾讯无法检测到违规内容,最保险的最好还要用技术手段屏蔽掉用户投诉按钮。这样的一整套方案实施后,大家的域名肯定会得到很好的防护效果。同样给大家推荐一个比较不错的测试接口【monkeyapi】,希望能帮助到你。 1. $url = "http://api."; 2. $params = array( 3. 'appkey' =>'appkey',//您申请的APPKEY 4. 'url' =>'www.url.com',//需要查询的网站 5. ); <<--有不懂的加q咨询:510124737-->> 6. 7. 8. $paramstring = http_build_query($params); 9. $content = Curl($url, $paramstring); 10.$result = json_decode($content, true); 11.if($result) { 12. var_dump($result); 13.}else { 14. //请求异常 15.} 16. 17./** 18. * 请求接口返回内容 19. * @param string $url [请求的URL地址] 20. * @param string $params [请 21. * @param int $ipost [是否采用POST形式] 22. * @return string 23.*/ 24.function Curl($url, $params = false, $ispost = 0) 25.{ 26. $httpInfo = array(); 27. $ch = curl_init(); 28. 29. curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1); 30. curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60); 31. curl_setopt($ch, CURLOPT_TIMEOUT, 60); 32. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 33. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 34. if ($ispost) { 35. curl_setopt($ch, CURLOPT_POST, true); 36. curl_setopt($ch, CURLOPT_POSTFIELDS, $params); 37. curl_setopt($ch, CURLOPT_URL, $url); 38. }else { 39. if ($params) { 40. curl_setopt($ch, CURLOPT_URL, $url.'?'.$params); 41. } else { 42. curl_setopt($ch, CURLOPT_URL, $url); 43. } 44. } 45. 46. $response = curl_exec($ch); 47. if ($response === FALSE) { 48. //echo "cURL Error: " . curl_error($ch); 49. return false; 50. } 51. 52. $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); 53. $httpInfo = array_merge($httpInfo, curl_getinfo($ch)); 54. curl_close($ch); 55. <<--有不懂的加q咨询:510124737-->> |
|
来自: 与子偕老6ea7h9 > 《待分类》