如何在单个POST请求中同时上传图片和JSON数据?(使用multipart方式)
我有一个表单,其中一些数据被转换成了JSON格式,用户可以添加0到6张照片并将其提交到API。请问如何实现这个功能?
编辑:
以下是我的代码,感谢您的帮助:
我正在使用Postman进行测试,我用“multipart/form-data” POST了2个文本(FamilleProduit和RefOrigine)和2个文件(2个图像)。我可以完美地获取这2个文本,但是每次图像字段都为空。
谢谢, Tristan。
// POST api/<controller>
[HttpPost, Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)]
public IActionResult Post(ViewModel vm)
{
IActionResult response = Unauthorized();
var data = vm.FamilleProduit;
var reforigine = vm.RefOrigine;
if (vm.Images != null)
{
foreach (var image in vm.Images)
{
byte[] fileData = null;
// read file to byte array
using (var binaryReader = new BinaryReader(image.OpenReadStream()))
{
fileData = binaryReader.ReadBytes((int)image.Length);
}
}
}
return response;
}
public class ViewModel
{
public string FamilleProduit { get; set; }
public string RefOrigine { get; set; }
public List<IFormFile> Images { get; set; }
}
我正在使用Postman进行测试,我用“multipart/form-data” POST了2个文本(FamilleProduit和RefOrigine)和2个文件(2个图像)。我可以完美地获取这2个文本,但是每次图像字段都为空。
谢谢, Tristan。