From 215aa9acedc25ddc697c75d0001f5b713862d30d Mon Sep 17 00:00:00 2001 From: Gosowong <1329847115@qq.com> Date: Tue, 6 Jun 2023 14:56:56 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9=E4=BA=AC=E4=B8=9C?= =?UTF-8?q?=E4=BA=91=E8=8E=B7=E5=8F=96=E5=9F=9F=E5=90=8D=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=20=20=E6=B7=BB=E5=8A=A0=E6=8A=A5=E9=94=99=E8=A7=A3=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- crmeb/crmeb/services/upload/Upload.php | 1 + crmeb/crmeb/services/upload/storage/Jdoss.php | 34 ++++++++++++++++++- 2 files changed, 34 insertions(+), 1 deletion(-) diff --git a/crmeb/crmeb/services/upload/Upload.php b/crmeb/crmeb/services/upload/Upload.php index d3e3b3e46..6b26ab177 100644 --- a/crmeb/crmeb/services/upload/Upload.php +++ b/crmeb/crmeb/services/upload/Upload.php @@ -20,6 +20,7 @@ use think\facade\Config; * @mixin \crmeb\services\upload\storage\OSS * @mixin \crmeb\services\upload\storage\COS * @mixin \crmeb\services\upload\storage\Qiniu + * @mixin \crmeb\services\upload\storage\Jdoss */ class Upload extends BaseManager { diff --git a/crmeb/crmeb/services/upload/storage/Jdoss.php b/crmeb/crmeb/services/upload/storage/Jdoss.php index 1bacc7354..e4663634e 100644 --- a/crmeb/crmeb/services/upload/storage/Jdoss.php +++ b/crmeb/crmeb/services/upload/storage/Jdoss.php @@ -272,9 +272,10 @@ class Jdoss extends BaseUpload ]; } - public function deleteBucket(string $name) + public function deleteBucket(string $name, string $region = '') { try { + $this->storageRegion = $region; $this->app()->deleteBucket([ 'bucketName' => $name, // REQUIRED 'forceDelete' => false @@ -288,6 +289,7 @@ class Jdoss extends BaseUpload public function getDomian(string $name, string $region = null) { try { + $this->storageRegion = $region; $res = $this->app()->getBucketWebsite([ 'Bucket' => $name ]); @@ -300,6 +302,7 @@ class Jdoss extends BaseUpload public function bindDomian(string $name, string $domain, string $region = null) { try { + $this->storageRegion = $region; $this->app()->putBucketWebsite([ 'Bucket' => $name, 'WebsiteConfiguration' => [ @@ -426,4 +429,33 @@ class Jdoss extends BaseUpload } return $waterPath; } + + public function setError(?string $error = null) + { + $this->error = $error ?: '未知错误'; + if (env('APP_DEBUG')) { + throw new UploadException($this->xmlToArr($this->error)); + } else { + return false; + } + } + + function xmlToArr($errorXml) + { + + $pattern = '/(\d+)<\/statusCode>(.*?)<\/Code>(.*?)<\/Message>(.*?)<\/Resource>(.*?)<\/RequestId>/'; + + preg_match($pattern, $errorXml, $matches); + + $error = [ + 'statusCode' => $matches[1], + 'Code' => $matches[2], + 'Message' => $matches[3], + 'Resource' => $matches[4], + 'RequestId' => $matches[5] + ]; + + return $error; + + } }