From b359508ab4a8fce95cb03088e7032b7ffa0d61b5 Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Tue, 2 Sep 2025 18:08:25 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9minio=20=E4=B8=8B?= =?UTF-8?q?=E8=BD=BD=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- IRaCIS.Core.Application/Helper/OSSService.cs | 45 ++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/IRaCIS.Core.Application/Helper/OSSService.cs b/IRaCIS.Core.Application/Helper/OSSService.cs index 2d8ad841b..b9bb13502 100644 --- a/IRaCIS.Core.Application/Helper/OSSService.cs +++ b/IRaCIS.Core.Application/Helper/OSSService.cs @@ -16,6 +16,7 @@ using Minio; using Minio.DataModel; using Minio.DataModel.Args; using Minio.Exceptions; +using System.Net.Http; using System.Reactive.Linq; using System.Runtime.InteropServices; using System.Web; @@ -226,8 +227,14 @@ public class OSSService : IOSSService var minIOConfig = ObjectStoreServiceOptions.MinIO; + var httpClientHandler = new HttpClientHandler + { + ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator + }; + var minioClient = new MinioClient().WithEndpoint($"{minIOConfig.EndPoint}:{minIOConfig.Port}") .WithCredentials(minIOConfig.AccessKeyId, minIOConfig.SecretAccessKey).WithSSL(minIOConfig.UseSSL) + .WithHttpClient(new HttpClient(httpClientHandler)) .Build(); var putObjectArgs = new PutObjectArgs() @@ -347,9 +354,14 @@ public class OSSService : IOSSService { var minIOConfig = ObjectStoreServiceOptions.MinIO; + var httpClientHandler = new HttpClientHandler + { + ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator + }; var minioClient = new MinioClient().WithEndpoint($"{minIOConfig.EndPoint}:{minIOConfig.Port}") .WithCredentials(minIOConfig.AccessKeyId, minIOConfig.SecretAccessKey).WithSSL(minIOConfig.UseSSL) + .WithHttpClient(new HttpClient(httpClientHandler)) .Build(); var putObjectArgs = new PutObjectArgs() @@ -420,10 +432,16 @@ public class OSSService : IOSSService } else if (ObjectStoreServiceOptions.ObjectStoreUse == "MinIO") { + var httpClientHandler = new HttpClientHandler + { + ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator + }; + var minIOConfig = ObjectStoreServiceOptions.MinIO; var minioClient = new MinioClient().WithEndpoint($"{minIOConfig.EndPoint}:{minIOConfig.Port}") .WithCredentials(minIOConfig.AccessKeyId, minIOConfig.SecretAccessKey).WithSSL(minIOConfig.UseSSL) + .WithHttpClient(new HttpClient(httpClientHandler)) .Build(); var getObjectArgs = new GetObjectArgs() @@ -508,10 +526,17 @@ public class OSSService : IOSSService { var minIOConfig = ObjectStoreServiceOptions.MinIO; + + var httpClientHandler = new HttpClientHandler + { + ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator + }; + var minioClient = new MinioClient() .WithEndpoint($"{minIOConfig.EndPoint}:{minIOConfig.Port}") .WithCredentials(minIOConfig.AccessKeyId, minIOConfig.SecretAccessKey) .WithSSL(minIOConfig.UseSSL) + .WithHttpClient(new HttpClient(httpClientHandler)) .Build(); var memoryStream = new MemoryStream(); @@ -961,8 +986,14 @@ public class OSSService : IOSSService var minIOConfig = ObjectStoreServiceOptions.MinIO; + var httpClientHandler = new HttpClientHandler + { + ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator + }; + var minioClient = new MinioClient().WithEndpoint($"{minIOConfig.EndPoint}:{minIOConfig.Port}") .WithCredentials(minIOConfig.AccessKeyId, minIOConfig.SecretAccessKey).WithSSL(minIOConfig.UseSSL) + .WithHttpClient(new HttpClient(httpClientHandler)) .Build(); @@ -1070,8 +1101,15 @@ public class OSSService : IOSSService var minIOConfig = ObjectStoreServiceOptions.MinIO; + var httpClientHandler = new HttpClientHandler + { + ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator + }; + + var minioClient = new MinioClient().WithEndpoint($"{minIOConfig.EndPoint}:{minIOConfig.Port}") .WithCredentials(minIOConfig.AccessKeyId, minIOConfig.SecretAccessKey).WithSSL(minIOConfig.UseSSL) + .WithHttpClient(new HttpClient(httpClientHandler)) .Build(); @@ -1149,8 +1187,15 @@ public class OSSService : IOSSService var minIOConfig = ObjectStoreServiceOptions.MinIO; + var httpClientHandler = new HttpClientHandler + { + ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator + }; + + var minioClient = new MinioClient().WithEndpoint($"{minIOConfig.EndPoint}:{minIOConfig.Port}") .WithCredentials(minIOConfig.AccessKeyId, minIOConfig.SecretAccessKey).WithSSL(minIOConfig.UseSSL) + .WithHttpClient(new HttpClient(httpClientHandler)) .Build(); From e346bfc527325532d28a459018dbdd4faf1b8cac Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Wed, 3 Sep 2025 10:43:37 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E5=88=9B=E5=BB=BA=E7=9B=AE=E5=BD=95?= =?UTF-8?q?=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../General/GeneralCalculateService.cs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/General/GeneralCalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/General/GeneralCalculateService.cs index 53c6c325d..7ba0356f9 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/General/GeneralCalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/General/GeneralCalculateService.cs @@ -777,13 +777,20 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate string[] strArry = url.Split('/'); savePath = savePath + "/" + strArry[strArry.Length - 1]; } + + var directory = Path.GetDirectoryName(savePath); + if (!string.IsNullOrEmpty(directory) && !Directory.Exists(directory)) + { + Directory.CreateDirectory(directory); + } + await _oSSService.DownLoadFromOSSAsync(url, savePath); return savePath; } - catch (Exception) + catch (Exception ex) { - + Log.Logger.Error(ex.Message + ex.StackTrace); throw new BusinessValidationFailedException(_localizer["ReadingCalculate_ImageNotExist"]); } From 3cb0ed4cd550829af3f0b89b5ccff7c1ec4ece72 Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Wed, 3 Sep 2025 11:16:17 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E8=BE=93=E5=87=BA=E8=B7=AF=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ReadingCalculate/General/GeneralCalculateService.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/General/GeneralCalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/General/GeneralCalculateService.cs index 7ba0356f9..bb55878e8 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/General/GeneralCalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/General/GeneralCalculateService.cs @@ -778,9 +778,12 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate savePath = savePath + "/" + strArry[strArry.Length - 1]; } + Console.WriteLine($"savePath:{savePath}"); + var directory = Path.GetDirectoryName(savePath); if (!string.IsNullOrEmpty(directory) && !Directory.Exists(directory)) { + Console.WriteLine($"CreateDirectory:{directory}"); Directory.CreateDirectory(directory); } From f84a9c481af7cdf7840d13f7c19480e81a6e3663 Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Wed, 3 Sep 2025 11:30:21 +0800 Subject: [PATCH 4/4] =?UTF-8?q?linux=E6=96=AD=E7=82=B9=E8=B0=83=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- IRaCIS.Core.Application/Helper/OSSService.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/IRaCIS.Core.Application/Helper/OSSService.cs b/IRaCIS.Core.Application/Helper/OSSService.cs index b9bb13502..ce86bfd0b 100644 --- a/IRaCIS.Core.Application/Helper/OSSService.cs +++ b/IRaCIS.Core.Application/Helper/OSSService.cs @@ -439,6 +439,8 @@ public class OSSService : IOSSService var minIOConfig = ObjectStoreServiceOptions.MinIO; + Console.WriteLine(minIOConfig.ToJsonStr() +$"ossRelativePath:{ossRelativePath} localFilePath:{localFilePath} "); + var minioClient = new MinioClient().WithEndpoint($"{minIOConfig.EndPoint}:{minIOConfig.Port}") .WithCredentials(minIOConfig.AccessKeyId, minIOConfig.SecretAccessKey).WithSSL(minIOConfig.UseSSL) .WithHttpClient(new HttpClient(httpClientHandler))