要解决AWS Lambda文件上传到ASP.NET Core 2.1 Razor页面会导致二进制文件损坏的问题,可以采取以下步骤:
[HttpPost]
public IActionResult UploadFile(IFormFile file)
{
if (file != null && file.Length > 0)
{
using (var memoryStream = new MemoryStream())
{
file.CopyTo(memoryStream);
// 这里可以对文件进行进一步处理,如保存到本地或上传到AWS S3等。
}
return Ok("文件上传成功");
}
return BadRequest("未选择文件或文件为空");
}
public async Task FunctionHandler(APIGatewayProxyRequest request, ILambdaContext context)
{
var form = await request.ToFormAsync();
var file = form.Files.FirstOrDefault();
// 这里可以进行文件处理,如保存到本地或上传到AWS S3等。
return new OkObjectResult("文件上传成功");
}
现在,您应该能够将文件上传到ASP.NET Core Razor页面,而不会导致二进制文件损坏。