using Microsoft.AspNetCore.Mvc; using Microsoft.VisualBasic; using Microsoft.Win32.SafeHandles; using System.IO; namespace NeDvachAPI.Controllers { [ApiController] [Route("[controller]")] public class UploadPic : ControllerBase { ///Local Buffer File Part string filePath; [HttpPost(Name = "UploadPicture")] public async Task ReceivePost([FromForm] IFormFile PostPicture) { var supportedTypes = new[] { "jpg", "png" }; string receivedFileName = PostPicture.FileName; string fileExt = receivedFileName.Substring((receivedFileName.Length) - 3, 3); //Console.WriteLine("Тип файла: " + fileExt); if (supportedTypes.Contains(fileExt)) //file type check { filePath = Directory.GetCurrentDirectory() + "\\Buffer\\" + receivedFileName; Stream picBuffer = new FileStream(filePath, FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite); //Console.WriteLine("Закидываю файл в " + filePath); PostPicture.CopyTo(picBuffer); picBuffer.Close(); ///MinIo part JsonResult picAdress = new(await MinIOchat.PictureUpload(filePath, receivedFileName)); Console.WriteLine("Загружен файл:" + "http://static.vdk2ch.ru:15555/thread-pics/" + receivedFileName); return picAdress; } else return new JsonResult("Неверный тип файла"); } } }