From 0f3ee250ada961f3a87293ea3f4fd78751baca00 Mon Sep 17 00:00:00 2001 From: Karson Date: Wed, 30 Sep 2020 15:17:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=B8=8A=E4=BC=A0=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E5=92=8CAPI=E6=8E=A5=E5=8F=A3=E4=B8=8A=E4=BC=A0?= =?UTF-8?q?=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/api/controller/Common.php | 2 +- application/common/model/Config.php | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/application/api/controller/Common.php b/application/api/controller/Common.php index 61682934..b921908a 100644 --- a/application/api/controller/Common.php +++ b/application/api/controller/Common.php @@ -47,7 +47,7 @@ class Common extends Api } $upload['cdnurl'] = $upload['cdnurl'] ? $upload['cdnurl'] : cdnurl('', true); - $upload['uploadurl'] = $upload['bucket'] == 'local' ? cdnurl('/api/common/upload', true) : url($upload['uploadurl'], '', false, true); + $upload['uploadurl'] = preg_match("/^((?:[a-z]+:)?\/\/)(.*)/i", $upload['uploadurl']) ? $upload['uploadurl'] : url($upload['bucket'] == 'local' ? '/api/common/upload' : $upload['uploadurl'], '', false, true); $content = [ 'citydata' => Area::getCityFromLngLat($lng, $lat), diff --git a/application/common/model/Config.php b/application/common/model/Config.php index 5fc4af4a..87fa1850 100644 --- a/application/common/model/Config.php +++ b/application/common/model/Config.php @@ -171,7 +171,10 @@ class Config extends Model $uploadurl = request()->module() ? $uploadcfg['uploadurl'] : ($uploadcfg['uploadurl'] === 'ajax/upload' ? 'index/' . $uploadcfg['uploadurl'] : $uploadcfg['uploadurl']); - $uploadurl = url($uploadurl, '', false, false); + if (!preg_match("/^((?:[a-z]+:)?\/\/)(.*)/i", $uploadurl) && substr($uploadurl, 0, 1) !== '/') { + $uploadurl = url($uploadurl, '', false); + } + $upload = [ 'cdnurl' => $uploadcfg['cdnurl'], 'uploadurl' => $uploadurl,