微信域名攔截查詢-網址被封禁檢測api

背景

公司是作文學相關的業務,在微信上作營銷推廣的時候,常常發現域名被微信屏蔽了,達不到預期的效果。php

在這裏插入圖片描述
公司的技術部分開始討論和調研有哪些技術手段能夠解決這個問題。初步的設想,但願達到這樣的效果:

  1. 用戶經過主域名訪問,主域名不承接任何業務,只跳轉到業務域名
  2. 維持一個業務域名池,後端實時檢測域名是否被微信屏蔽/攔截
  3. 當檢測到域名被微信屏蔽/攔截時,自動下線被屏蔽/攔截的域名

從這裏能夠看出,檢測域名是否被微信屏蔽,是這裏的核心。可是在網上搜索和查看微信的文檔,微信官方沒有提供相關的查詢方法。最後,在網上找到了一個接口地址,分享給有須要的朋友。html

示例代碼json

<?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));
}
複製代碼

相關服務