From 06057850c1ad47dd153bd669b5931e1dffceb33a Mon Sep 17 00:00:00 2001 From: Karson Date: Wed, 30 Sep 2020 13:32:22 +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=20=E4=BC=98=E5=8C=96API=E6=8E=A5=E5=8F=A3=E9=85=8D?= =?UTF-8?q?=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/api/controller/Common.php | 21 ++++++++++++++++++++- application/common/model/Config.php | 2 +- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/application/api/controller/Common.php b/application/api/controller/Common.php index db121d2f..61682934 100644 --- a/application/api/controller/Common.php +++ b/application/api/controller/Common.php @@ -9,6 +9,7 @@ use app\common\model\Area; use app\common\model\Version; use fast\Random; use think\Config; +use think\Hook; /** * 公共接口 @@ -30,10 +31,28 @@ class Common extends Api if ($version = $this->request->request('version')) { $lng = $this->request->request('lng'); $lat = $this->request->request('lat'); + + //配置信息 + $upload = Config::get('upload'); + //如果非服务端中转模式需要修改为中转 + if ($upload['storage'] != 'local' && isset($upload['uploadmode']) && $upload['uploadmode'] != 'server') { + //临时修改上传模式为服务端中转 + set_addon_config($upload['storage'], ["uploadmode" => "server"], false); + + $upload = \app\common\model\Config::upload(); + // 上传信息配置后 + Hook::listen("upload_config_init", $upload); + + $upload = Config::set('upload', array_merge(Config::get('upload'), $upload)); + } + + $upload['cdnurl'] = $upload['cdnurl'] ? $upload['cdnurl'] : cdnurl('', true); + $upload['uploadurl'] = $upload['bucket'] == 'local' ? cdnurl('/api/common/upload', true) : url($upload['uploadurl'], '', false, true); + $content = [ 'citydata' => Area::getCityFromLngLat($lng, $lat), 'versiondata' => Version::check($version), - 'uploaddata' => Config::get('upload'), + 'uploaddata' => $upload, 'coverdata' => Config::get("cover"), ]; $this->success('', $content); diff --git a/application/common/model/Config.php b/application/common/model/Config.php index 0ed90d18..5fc4af4a 100644 --- a/application/common/model/Config.php +++ b/application/common/model/Config.php @@ -171,7 +171,7 @@ class Config extends Model $uploadurl = request()->module() ? $uploadcfg['uploadurl'] : ($uploadcfg['uploadurl'] === 'ajax/upload' ? 'index/' . $uploadcfg['uploadurl'] : $uploadcfg['uploadurl']); - $uploadurl = url($uploadurl, '', false, true); + $uploadurl = url($uploadurl, '', false, false); $upload = [ 'cdnurl' => $uploadcfg['cdnurl'], 'uploadurl' => $uploadurl,