From 6af00a9982b720bc48ef7df4ae3a62b57ff01754 Mon Sep 17 00:00:00 2001 From: gil zhang Date: Sat, 25 Mar 2023 10:03:19 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E8=A1=A8=E6=83=85=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Services/EmojisFile/IEmojisFileService.cs | 2 +- .../Services/eShop/IEmojiseShopService.cs | 2 +- .../Services/EmojisFile/EmojisFileService.cs | 6 ++--- .../Services/eShop/EmojiseShopService.cs | 22 ++++++++++++------- 4 files changed, 19 insertions(+), 13 deletions(-) diff --git a/src/ElectronBot.BraincasePreview/Contracts/Services/EmojisFile/IEmojisFileService.cs b/src/ElectronBot.BraincasePreview/Contracts/Services/EmojisFile/IEmojisFileService.cs index 6907888..2108e86 100644 --- a/src/ElectronBot.BraincasePreview/Contracts/Services/EmojisFile/IEmojisFileService.cs +++ b/src/ElectronBot.BraincasePreview/Contracts/Services/EmojisFile/IEmojisFileService.cs @@ -15,5 +15,5 @@ public interface IEmojisFileService /// /// 表情对象 /// 临时目录路径 - Task ExportEmojisFileToTempAsync(EmoticonAction emoticonAction); + Task<(string path, string name)> ExportEmojisFileToTempAsync(EmoticonAction emoticonAction); } diff --git a/src/ElectronBot.BraincasePreview/Contracts/Services/eShop/IEmojiseShopService.cs b/src/ElectronBot.BraincasePreview/Contracts/Services/eShop/IEmojiseShopService.cs index e593dd9..cd6470b 100644 --- a/src/ElectronBot.BraincasePreview/Contracts/Services/eShop/IEmojiseShopService.cs +++ b/src/ElectronBot.BraincasePreview/Contracts/Services/eShop/IEmojiseShopService.cs @@ -10,5 +10,5 @@ public interface IEmojiseShopService Task DownloadEmojisAsync(string id); - Task UploadEmojisAsync(EmoticonAction emoticon); + Task UploadEmojisAsync(EmoticonAction emoticon); } diff --git a/src/ElectronBot.BraincasePreview/Services/EmojisFile/EmojisFileService.cs b/src/ElectronBot.BraincasePreview/Services/EmojisFile/EmojisFileService.cs index 0c95478..5086e69 100644 --- a/src/ElectronBot.BraincasePreview/Services/EmojisFile/EmojisFileService.cs +++ b/src/ElectronBot.BraincasePreview/Services/EmojisFile/EmojisFileService.cs @@ -90,7 +90,7 @@ public class EmojisFileService : IEmojisFileService ToastHelper.SendToast($"{text}-{destinationFile.Path}", TimeSpan.FromSeconds(5)); } - public async Task ExportEmojisFileToTempAsync(EmoticonAction emoticonAction) + public async Task<(string path, string name)> ExportEmojisFileToTempAsync(EmoticonAction emoticonAction) { StorageFolder? destinationFolder; @@ -154,11 +154,11 @@ public class EmojisFileService : IEmojisFileService ZipFileCreatorHelper.CreateZipFile(filePaths, destinationFile.Path); - return destinationFile.Path; + return (destinationFile.Path, destinationFile.Name); } catch (Exception) { - return string.Empty; + return (string.Empty, string.Empty); } } } diff --git a/src/ElectronBot.BraincasePreview/Services/eShop/EmojiseShopService.cs b/src/ElectronBot.BraincasePreview/Services/eShop/EmojiseShopService.cs index 39e1fde..911ae24 100644 --- a/src/ElectronBot.BraincasePreview/Services/eShop/EmojiseShopService.cs +++ b/src/ElectronBot.BraincasePreview/Services/eShop/EmojiseShopService.cs @@ -19,26 +19,32 @@ public class EmojiseShopService : IEmojiseShopService public Task DownloadEmojisAsync(string id) => throw new NotImplementedException(); public Task GetEmojisItemAsync(string id) => throw new NotImplementedException(); public Task> GetEmojisListAsync(EmojisItemQuery itemQuery) => throw new NotImplementedException(); - public async Task UploadEmojisAsync(EmoticonAction emoticon) + public async Task UploadEmojisAsync(EmoticonAction emoticon) { - var path = await _emojisFileService.ExportEmojisFileToTempAsync(emoticon); + var pathName = await _emojisFileService.ExportEmojisFileToTempAsync(emoticon); - if (path == null) + if (pathName.path == null) { - return false; + return string.Empty; } var httpClient = _httpClientFactory.CreateClient(); + var resultData = string.Empty; + using var content = new MultipartFormDataContent(); //replace with your own file path - var filePath = Path.GetFullPath(path); + var filePath = Path.GetFullPath(pathName.path); + var file = System.IO.File.ReadAllBytes(filePath); var byteArrayContent = new ByteArrayContent(file); - content.Add(byteArrayContent, "fs","a.zip"); + content.Add(byteArrayContent, "fs",pathName.name); var result = await httpClient.PostAsync(ProfileImageUploadUri, content); - var resultContent = await result.Content.ReadAsStringAsync(); + if (result.IsSuccessStatusCode) + { + resultData = await result.Content.ReadAsStringAsync(); + } - return true; + return resultData; } }