From 01df56ad7d92986f2d91f7e769573da0192bf9c6 Mon Sep 17 00:00:00 2001 From: Roy <576477085@qq.com> Date: Fri, 22 Nov 2024 19:06:06 +0800 Subject: [PATCH] fix minio upload --- api/terminal/terminal/common/s3.py | 2 +- api/terminal/terminal/server/uploader.py | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/api/terminal/terminal/common/s3.py b/api/terminal/terminal/common/s3.py index 4fe23d8..83a2477 100644 --- a/api/terminal/terminal/common/s3.py +++ b/api/terminal/terminal/common/s3.py @@ -41,7 +41,7 @@ def parse_url(url): def upload_file(self, bucket, object_key, filepath): endpoint_info = self.parse_url(self.endpoint) - client = minio.Minio(self.endpoint, self.access_key, self.secret_key, secure=endpoint_info['secure']) + client = minio.Minio(endpoint_info['host'], self.access_key, self.secret_key, secure=endpoint_info['secure']) return client.fput_object(bucket, object_key, filepath) def download_file(self, url, filepath): diff --git a/api/terminal/terminal/server/uploader.py b/api/terminal/terminal/server/uploader.py index c6f5242..b3b3fd7 100644 --- a/api/terminal/terminal/server/uploader.py +++ b/api/terminal/terminal/server/uploader.py @@ -28,7 +28,10 @@ def upload(session_id, filepath, endpoint, ak, sk, bucket, object_key): if not os.path.exists(filepath): return client = s3.S3Client(endpoint, ak, sk) - fullurl = '/'.join(['http://' + endpoint.rstrip('/'), bucket, object_key]) + urlprefix = endpoint.rstrip('/') + if not urlprefix.startswith('http'): + urlprefix = 'http://' + urlprefix + fullurl = '/'.join([urlprefix, bucket, object_key]) try: client.upload_file(bucket, object_key, filepath) resource.SessionRecord().update(session_id, {'filepath': fullurl})