【发布时间】:2019-07-17 23:08:00
【问题描述】:
我正在尝试使用 aurelia 从前端将上传的图像发布到 asp.net mvc。有没有办法可以将接收到的图像以 png 格式保存在服务器上的文件夹中?
我发布图像数据的 Javascript 方法(files 是上传的图像,id 是我需要用于文件名的唯一图像 ID)
saveImage(files,id) {
var form = new FormData()
form.append('file', files)
form.append('ID', id)
this.http.fetch('/api/Employees', {
method: 'post',
body: form
})
return true;
}
ImagesController(Asp.net MVC)
using Microsoft.AspNetCore.Mvc;
using System;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
namespace SPAproject.Controllers
{
public class ImagesController : Controller
{
[HttpPost, Route("api/[controller]")]
public async Task<IActionResult> SaveImage()
{
try
{
var form = await Request.ReadFormAsync();
var file = form.Files.First();
var id = form.ElementAt(1);
var path = "/images/" + id + ".png";
Stream stream = file.OpenReadStream();
return Ok(true);
}
catch (Exception ex)
{
var originalMessage = ex.Message;
while (ex.InnerException != null)
ex = ex.InnerException;
return BadRequest($"{originalMessage} | {ex.Message}");
}
}
}
}
}
【问题讨论】:
标签: c# asp.net-mvc image aurelia