Así que estoy usando el proyecto AWS Lamda para cargar un archivo de Excel en S3. Se cargó en S3, pero el problema es que se corrompió una vez que se cargó. Funciona bien en local, pero cuando lo implemento en AWS no funciona.
A continuación se muestra mi código.
Controlador.cs
IFormFile file = Request.Form.Files[0]; UploadtoS3("Test", file, file.FileName);Subir al método S3
UploadtoS3(string bucketName, IFormFile file, string fileName) { System.IO.Stream MyStream = file.OpenReadStream(); PutObjectRequest request = new PutObjectRequest { BucketName = bucketName, Key = fileName, InputStream = MyStream, ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" }; PutObjectResponse response = await _client.PutObjectAsync(request); }Puerta de enlace API de AWS
También he añadido posibles tipos binarios.
Por favor ayuda. Gracias de antemano
Ante un problema similar. En mi caso, la etapa de redistribución de la API ayudó
También se actualizó LambdaProxyFunction
protected override void Init(IWebHostBuilder builder) { builder .UseStartup<Startup>(); RegisterResponseContentEncodingForContentType("multipart/form-data", ResponseContentEncoding.Base64); RegisterResponseContentEncodingForContentType("application/vnd.ms-excel", ResponseContentEncoding.Base64); RegisterResponseContentEncodingForContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", ResponseContentEncoding.Base64); RegisterResponseContentEncodingForContentType("application/vnd.ms-excel.sheet.macroEnabled.12", ResponseContentEncoding.Base64); }