初始化
This commit is contained in:
1
api/dwzrec/counter.dat
Normal file
1
api/dwzrec/counter.dat
Normal file
@@ -0,0 +1 @@
|
||||
1
|
||||
54
api/dwzrec/index.php
Normal file
54
api/dwzrec/index.php
Normal file
@@ -0,0 +1,54 @@
|
||||
<?php
|
||||
$counter = intval(file_get_contents("counter.dat"));
|
||||
$_SESSION['#'] = true;
|
||||
$counter++;
|
||||
$fp = fopen("counter.dat","w");
|
||||
fwrite($fp, $counter);
|
||||
fclose($fp);
|
||||
?>
|
||||
|
||||
<?php
|
||||
|
||||
|
||||
header('Access-Control-Allow-Origin:*');
|
||||
header('Content-type:application/json; charset=utf-8');
|
||||
!empty($_GET['url']) ? $api = $_GET['url'] : exit(json_encode([
|
||||
'code'=>202,
|
||||
"msg"=>"网址不能为空"
|
||||
],JSON_UNESCAPED_UNICODE));
|
||||
/*
|
||||
* 请求
|
||||
*/
|
||||
$json = myCurl($api);
|
||||
/*
|
||||
* 判断
|
||||
*/
|
||||
if($json){
|
||||
echo json_encode(array('code'=>200,'dwz'=>$api,'rec'=>$json),JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE);
|
||||
} else {
|
||||
echo json_encode(array('code'=>201,'msg'=>'短网址还原失败'),JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE);
|
||||
}
|
||||
/***
|
||||
* 万能短网址还原函数
|
||||
* @param $url 短网址
|
||||
* @return 原始网址 | 空(还原失败或非短网址)
|
||||
*/
|
||||
function myCurl($url) {
|
||||
$curl = curl_init();
|
||||
curl_setopt($curl, CURLOPT_URL, $url);
|
||||
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
|
||||
curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:70.0) Gecko/20100101 Firefox/70.0');
|
||||
curl_setopt($curl, CURLOPT_HEADER, true);
|
||||
curl_setopt($curl, CURLOPT_NOBODY, false);
|
||||
curl_setopt($curl, CURLOPT_TIMEOUT, 15);
|
||||
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
|
||||
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2);
|
||||
curl_setopt($curl, CURLOPT_ENCODING, 'gzip');
|
||||
$data = curl_exec($curl);
|
||||
$curlInfo = curl_getinfo($curl);
|
||||
curl_close($curl);
|
||||
if($curlInfo['http_code'] == 301 || $curlInfo['http_code'] == 302) {
|
||||
return $curlInfo['redirect_url'];
|
||||
}
|
||||
return '';
|
||||
}
|
||||
Reference in New Issue
Block a user