|
|
|
<?php
|
|
|
|
/**
|
|
|
|
* Created by PhpStorm.
|
|
|
|
* User: zhl
|
|
|
|
* Date: 2024/01/04
|
|
|
|
* Time: 16:08
|
|
|
|
*/
|
|
|
|
namespace App\Http\Controllers\Api;
|
|
|
|
|
|
|
|
use App\Models\Visit\SyncSubmitTask;
|
|
|
|
use App\Models\Visit\Visit;
|
|
|
|
use Illuminate\Http\Request;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Class NoticeController
|
|
|
|
* @package App\Http\Controllers\Api
|
|
|
|
*/
|
|
|
|
class NoticeController extends BaseController
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* 网站引流
|
|
|
|
* @param Request $request
|
|
|
|
* @return false|string
|
|
|
|
*/
|
|
|
|
public function trafficVisit(Request $request)
|
|
|
|
{
|
|
|
|
$ip = $request->input('ip');
|
|
|
|
$url = $request->input('url');
|
|
|
|
$device_port = intval($request->input('device_port'));
|
|
|
|
$referrer_url = $request->input('referrer_url');
|
|
|
|
$user_agent = $request->input('user_agent');
|
|
|
|
|
|
|
|
if (empty($ip))
|
|
|
|
return $this->error('IP不能为空');
|
|
|
|
if (empty($url))
|
|
|
|
return $this->error('访问链接不能为空');
|
|
|
|
if (empty($user_agent))
|
|
|
|
return $this->error('请求头信息user_agent不能为空');
|
|
|
|
|
|
|
|
//
|
|
|
|
$url_array = parse_url($url);
|
|
|
|
$array = [
|
|
|
|
'ip' => $ip,
|
|
|
|
'domain' => $url_array['host'] ?? '',
|
|
|
|
'referer' => $referrer_url,
|
|
|
|
'user_agent' => $user_agent,
|
|
|
|
'data' => [
|
|
|
|
'url' => $url,
|
|
|
|
'domain' => empty($url_array['host']) ? '' : $url_array['scheme'] . '://' . $url_array['host'],
|
|
|
|
'device_port' => in_array($device_port, array_keys(Visit::deviceMap())) ? $device_port : 1,
|
|
|
|
'referrer_url' => $referrer_url
|
|
|
|
]
|
|
|
|
];
|
|
|
|
SyncSubmitTask::createTask($array, SyncSubmitTask::TYPE_VISIT);
|
|
|
|
return $this->success([]);
|
|
|
|
}
|
|
|
|
} |
...
|
...
|
|