域名授權(quán)驗證方式

第一種方法食用方式

<?php
/** ----------------------------------
 * 授權(quán)JSON服務(wù)端
-------------------------------------- */
header('Access-Control-Allow-Origin:*');
header('Content-type:application/json; charset=utf-8');
$domain = $_GET['domain'];
$json = array('baidu.com'); //數(shù)組
if(in_array($domain, $json)){ //in_array匹配
    $value = array(
        'code'=>200,
        'data'=>'當前域名已授權(quán)'
    );
}else{
    $value = array(
        'code'=>202,
        'data'=>'域名未授權(quán)'
    );
}
echo json_encode($value,JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE);
/** ----------------------------------
 * 授權(quán)客戶端
-------------------------------------- */
$host = $_SERVER["HTTP_HOST"]; 
$file = file_get_contents('http://域名/api.php?domain='.$host);
$data = json_decode($file,true);
if(!empty($data['code'] == 202)){
    die("未授權(quán)!"); //提示
}

第二種多維數(shù)組驗證食用方式

實例采用域名+時間驗證
<?php
/** ----------------------------------
 * 授權(quán)JSON服務(wù)端
-------------------------------------- */
header('Access-Control-Allow-Origin:*');
header('Content-type:application/json; charset=utf-8');
$domain = $_GET['domain'];
//二維數(shù)組
$data=array (
    'api' => array (
        0 => array ( 'ytime' => '2020-05-10 18:43:20', 'ntime' => '2020-12-10','url' => 'baidu.com'),
        1 => array ( 'ytime' => '2020-05-10 18:43:20','ntime' => '2020-12-10','url' => 'baidu.com'),
    ),
);

$pora = start($domain,$data['api']);
if($pora['domain'] == $domain){
    $ceil = ceil((strtotime($pora['end']) - strtotime($pora['start']))/86400);
    if($ceil == 0){
        $item = array('code'=>202,'msg'=>'授權(quán)時間到期');     
    }else{
        $item = $value;
    }   
}else{
    $item = array('code'=>202,'msg'=>'未授權(quán)');
}
echo json_encode($item,JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE);

function start($url,$api){
    $filter  =  array_filter($api, function($vue) use ( $url){
        if($vue["url"] == $url){return $vue['url'] == $url;}
    });
    foreach ($filter as $getsort){
        $type = array('domain'=>$getsort['url'],'start'=>$getsort['ytime'],'end'=>$getsort['ntime']);
    }
    return $type;    // 函數(shù)返回內(nèi)容  
}
/** ----------------------------------
 * 授權(quán)客戶端
-------------------------------------- */
$host = $_SERVER["HTTP_HOST"]; 
$file = file_get_contents('http://域名/api.php?domain='.$host);
$data = json_decode($file,true);
if(!empty($data['code'] == 202)){
    die($data['msg']); //提示
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容