分享一个自用的网址检查API, 来自腾讯的数据

前情提要

前段时间想搞一个短网址系统, 然后图省事也懒得折腾, 又怕一堆一辈子吃不上四个菜的提交违规网址, 或者被腾讯拉入黑名单的网址导致我自己的顶级域名被封, 因此需要接入第三方的网址检查, 当然最好是是腾讯的, 毕竟社交这一块. QQ和微信已经把请学生和打工人封印的死死的. 于是乎我就去网上API, 翻了好半天, 找到了个能用的参考例子, 自己优化了一下, 成品如下!

成品效果

Snipaste_2021-10-21_00-42-07.jpg

代码分享

<?php
header("Content-Type:application/json; charset=utf-8");

function curl_get($url, $data = [], $header = [], $referer = "", $timeout = 30)
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url . "?" . http_build_query($data));
    curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
    curl_setopt($ch, CURLOPT_REFERER, $referer);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    $response = curl_exec($ch);
    if ($error = curl_error($ch)) die($error);
    curl_close($ch);
    return $response;
}

// 调用
if (isset($_GET["url"])) {
    $url = "https://cgi.urlsec.qq.com/index.php";
    $data = [
        "m" => "check",
        "a" => "check",
        "url" => $_GET["url"]
    ];
    $header = [];
    $referer = "https://urlsec.qq.com/";
    $response = curl_get($url, $data, $header, $referer, 5);
    $result = json_decode(substr($response, 1, -1), true);
    exit(json_encode(["code" => 200,"data" => $result["data"]["results"]], true));
} else {
    exit(json_encode(["code" => 500,"msg" => "缺少必要参数: url"]));
}