Skip to content

Commit

Permalink
Merge pull request #843 from LittleFish-233/master
Browse files Browse the repository at this point in the history
转存到图床时用文件sha1命名
  • Loading branch information
LittleFish-233 authored Oct 18, 2024
2 parents 662270f + fcfe6a1 commit 8289231
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ public FileController(IHttpClientFactory clientFactory, IWebHostEnvironment webH
/// <returns></returns>
[HttpPost]
[AllowAnonymous]
public async Task<ActionResult<List<UploadResult>>> UploadAsync([FromForm] List<IFormFile> files, [FromQuery] double x, [FromQuery] double y, [FromQuery] UploadFileType type, [FromQuery] bool gallery=false)
public async Task<ActionResult<List<UploadResult>>> UploadAsync([FromForm] List<IFormFile> files, [FromQuery] double x, [FromQuery] double y, [FromQuery] UploadFileType type, [FromQuery] bool gallery = false)
{
if (files.Count == 0)
{
Expand All @@ -53,14 +53,14 @@ public async Task<ActionResult<List<UploadResult>>> UploadAsync([FromForm] List<
{
try
{
model.Add(await _fileService.UploadFormFile(item,gallery, x, y, type));
model.Add(await _fileService.UploadFormFile(item, gallery, x, y, type));
}
catch (Exception ex)
{
model.Add(new UploadResult
{
Uploaded = false,
FileName=item.Name,
FileName = item.Name,
Error = ex.Message
});
}
Expand Down Expand Up @@ -101,7 +101,7 @@ public async Task<ActionResult<UploadResult>> linkToImgUrlAsync([FromQuery] stri

try
{
var result= await _fileService.TransferDepositFile(url,gallery, x, y, type);
var result = await _fileService.TransferDepositFile(url, gallery, x, y, type);

return result;
}
Expand All @@ -126,18 +126,19 @@ public async Task<ActionResult<UploadResult>> linkToImgUrlAsync([FromQuery] stri
[AllowAnonymous]
public async Task<ActionResult<UploadResult>> TransferDepositToTucangCCAsync([FromQuery] string url)
{
string path="";
string path = "";
try
{
path = await _fileService.SaveFileFromUrl(url, UploadFileType.Image);
var result = await _uploadService.UploadToTucangCC(path);
var sha1 = _fileService.GetSHA1(path);
var result = await _uploadService.UploadToTucangCC(path, $"{sha1}.png");
_fileService.DeleteFile(path);

return new UploadResult
{
Url = result,
OriginalUrl = url,
Uploaded=true
Uploaded = true
};
}
catch (Exception ex)
Expand Down Expand Up @@ -212,7 +213,7 @@ public async Task<ActionResult<Result>> GetSameFileAsync([FromQuery] string sha1
public async Task<ActionResult<Result>> GetRandomFileAsync([FromQuery] UploadFileType type)
{
var random = new Random();
var length = await _uploadRecordRepository.CountAsync(s => string.IsNullOrWhiteSpace(s.Url) == false&&s.Type==type);
var length = await _uploadRecordRepository.CountAsync(s => string.IsNullOrWhiteSpace(s.Url) == false && s.Type == type);
if (length > 0)
{
var p = random.Next(0, length);
Expand Down
4 changes: 2 additions & 2 deletions CnGalWebSite/CnGalWebSite.DrawingBed/Services/FileService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ private async Task<string> UploadLocalFileToServer(string filePath, string shar1

if (gallery && type == UploadFileType.Image)
{
url = await _uploadService.UploadToTucangCC(filePath) + "?" + url;
url = await _uploadService.UploadToTucangCC(filePath,$"{GetSHA1(filePath)}.png") + "?" + url;
}

return url;
Expand Down Expand Up @@ -233,7 +233,7 @@ public async Task<string> SaveFileFromUrl(string url, UploadFileType type)
return newPath;
}

private string GetSHA1(string path)
public string GetSHA1(string path)
{
try
{
Expand Down
2 changes: 2 additions & 0 deletions CnGalWebSite/CnGalWebSite.DrawingBed/Services/IFileService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,7 @@ public interface IFileService
Task<string> SaveFileFromUrl(string url, UploadFileType type);

void DeleteFile(string path);

string GetSHA1(string path);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ public interface IUploadService

Task<string> UploadToAliyunOSS(string filePath, string shar1);

Task<string> UploadToTucangCC(string filePath);
Task<string> UploadToTucangCC(string filePath, string uploadName);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ public async Task<string> UploadToTencentOSS(string filePath, string shar1)
/// 转存图片到公共图床
/// </summary>
/// <returns></returns>
public async Task<string> UploadToTucangCC(string filePath)
public async Task<string> UploadToTucangCC(string filePath, string uploadName)
{
try
{
Expand All @@ -132,7 +132,7 @@ public async Task<string> UploadToTucangCC(string filePath)
content.Add(
content: fileContent,
name: "file",
fileName: "test.png");
fileName: uploadName);
content.Add(new StringContent(_configuration["TucangCCAPIToken"]), "token");

var response = await _httpClient.PostAsync(_configuration["TucangCCAPIUrl"], content);
Expand All @@ -143,7 +143,7 @@ public async Task<string> UploadToTucangCC(string filePath)
if (result["code"].ToObject<int>() == 200)
{

var url= $"{_configuration["CustomTucangCCUrl"]}{result["data"]["url"].ToObject<string>().Split('/').LastOrDefault()}";
var url = $"{_configuration["CustomTucangCCUrl"]}{result["data"]["url"].ToObject<string>().Split('/').LastOrDefault()}";
await _httpClient.GetAsync(url);
_logger.LogInformation("成功上传图片到TucangCC:{url}", url);
return url;
Expand Down

0 comments on commit 8289231

Please sign in to comment.