作者 lyh
@@ -3,6 +3,7 @@ @@ -3,6 +3,7 @@
3 namespace App\Http\Controllers\Api; 3 namespace App\Http\Controllers\Api;
4 4
5 use App\Exceptions\InquiryFilterException; 5 use App\Exceptions\InquiryFilterException;
  6 +use App\Models\Project\Project;
6 use App\Models\Visit\SyncSubmitTask; 7 use App\Models\Visit\SyncSubmitTask;
7 use App\Services\CosService; 8 use App\Services\CosService;
8 use Illuminate\Http\Request; 9 use Illuminate\Http\Request;
@@ -18,6 +19,7 @@ class SelfSiteController extends BaseController @@ -18,6 +19,7 @@ class SelfSiteController extends BaseController
18 */ 19 */
19 public function selfSiteApi(Request $request) 20 public function selfSiteApi(Request $request)
20 { 21 {
  22 + $token = $request->header('token');//token
21 $data = $request->input('data');//访问数据 23 $data = $request->input('data');//访问数据
22 $domain = $request->input('domain');//访问域名 24 $domain = $request->input('domain');//访问域名
23 $ip = $request->input('ip');//访问ip 25 $ip = $request->input('ip');//访问ip
@@ -27,6 +29,10 @@ class SelfSiteController extends BaseController @@ -27,6 +29,10 @@ class SelfSiteController extends BaseController
27 $traffic = $request->input('traffic', SyncSubmitTask::TRAFFIC_DEFAULT);//是否引流 29 $traffic = $request->input('traffic', SyncSubmitTask::TRAFFIC_DEFAULT);//是否引流
28 $files = $request->input('files', []);//文件 30 $files = $request->input('files', []);//文件
29 31
  32 + if (empty($token)) {
  33 + return $this->error('token无效', 401);
  34 + }
  35 +
30 if (empty($data) || empty($domain)) { 36 if (empty($data) || empty($domain)) {
31 return $this->error('参数错误'); 37 return $this->error('参数错误');
32 } 38 }
@@ -35,6 +41,17 @@ class SelfSiteController extends BaseController @@ -35,6 +41,17 @@ class SelfSiteController extends BaseController
35 return $this->error('类型错误'); 41 return $this->error('类型错误');
36 } 42 }
37 43
  44 + //判断token是否有效
  45 + $project_model = new Project();
  46 + $project_info = $project_model->read(['site_token' => $token]);
  47 + if (!$project_info) {
  48 + return $this->error('token无效', 401);
  49 + }
  50 + if (($project_info['domainInfo']['domain'] ?? '') != $domain) {
  51 + return $this->error('token无效', 401);
  52 + }
  53 +
  54 +
38 if (!empty($files)) { 55 if (!empty($files)) {
39 try { 56 try {
40 foreach ($files as $key => $file) { 57 foreach ($files as $key => $file) {