實時微信域名檢測API介面的實現方式

it5748發表於2020-03-16

應用場景

最近 我們剛成立了一個 專案 ,在微信推廣中,域名時不時的就被微信攔截,這使我們都非常頭大,這時我翻閱網際網路上所有的資料,知道有微信域名檢測這樣一個 API 介面,問了身邊做技術的朋友,朋友也說需要一這微信域名檢測這樣的 API 介面 ,實時 檢測域名在微信裡是否可以開啟,如果被微信攔截,則需要進行下一步操作,所以需要判斷域名的狀態,但是微信官方並沒有提供相關查詢的方法,最後在網上找到了這個介面地址,分享給有需要的朋友。

檢測樣式:  

舉例說明:如果需要檢測123.com,就把   換成 123.com,這裡面appkey是需要找人獲取的,獲取方式可可以諮詢我 ,此時就可以實時檢測域名啦,值得一提的是,這裡被檢測的物件可以是域名,也可以是連結,還可以是帶引數的連結,我讓我覺得特別了不起。

 

這裡分析下 域名被封常見原因 域名被封,確實有很多因素,簡單列舉下:

 

1 、購買的域名有黑歷史,曾經進過小黑屋,這類則是風險名單中的重點檢測物件

 

2 qq 和微信是 2 種完全不同的檢測機制,經常會出現一邊被封另一邊沒事!

 

3 、網站流量過大,騰訊針對流量過大的網站也是重點檢測的物件!

 

4 、誘導轉發活動,即使是合法營銷,也會被封

 

5   正文、標題、圖片任意有一處有一點點違規資訊,被系統抓取到也是會被封禁

 

6 、人工舉報,這個也佔有一定的比例

 

7 、有的是封連結不封域名,因為是騰訊合作的第三方平臺,京東、拼多多、有贊等等

 

8   伺服器 IP 是一個很重點檢測

 

9 、對於明顯特徵或複用度高的違規圖片,系統是能識別的!

 

api 介面地址中的 url 連結換成需要檢測的網址即可

 

最後分享下 PHP 程式碼實現示例:

$url = 
"
;
$params = 
array
(
'appkey'
 =>
'appkey'
,
//您申請的APPKEY
'url'
 =>
'
,
//需要查詢的網站
);
$paramstring = http_build_query($params);
$content = Curl($url, $paramstring);
$result = json_decode($content, 
true
);
if
($result) {
    var_dump($result);
}
else
 {    
//請求異常
}
/**
    * 請求介面返回內容
    * 
@param
    string $url [請求的URL地址]
    * 
@param
    string $params [請求的引數]
    * 
@param
    int $ipost [是否採用POST形式]
    * 
@return
    string
*/
function
 
Curl
($url, $params = false, $ispost = 
)
{
    $httpInfo = 
array
();
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 
60
);
    curl_setopt($ch, CURLOPT_TIMEOUT, 
60
);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 
true
);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 
true
);    
if
 ($ispost) {
        curl_setopt($ch, CURLOPT_POST, 
true
);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
        curl_setopt($ch, CURLOPT_URL, $url);
    }
else
 {        
if
 ($params) {
            curl_setopt($ch, CURLOPT_URL, $url.
'?'
.$params);
        } 
else
 {
            curl_setopt($ch, CURLOPT_URL, $url);
        }
    }
    $response = curl_exec($ch);        
if
 ($response === 
FALSE
) {        
//echo "cURL Error: " . curl_error($ch);
        
return
 
false
;
    }
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    $httpInfo = array_merge($httpInfo, curl_getinfo($ch));
    curl_close($ch);    
return
 $response;
}


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69965428/viewspace-2680637/,如需轉載,請註明出處,否則將追究法律責任。

相關文章