Загрузка файла AWS C# лямбда на S3
Я создал Serverless для AWS, используя пустой шаблон visual studio. Я пытаюсь отправить на него файл, который внутренне загружается на S3 с использованием C#. Я могу загрузить файл через консольное приложение. Мне нужна помощь по: а. как отправить файл в API через Insomnia или Postman - теперь это возможно b. Как получить файл так, что когда я загружаю его S3, я могу загрузить его непосредственно так, как я отправил в API. - в состоянии сделать это сейчас
[РЕДАКТИРОВАТЬ] c. При попытке сохранить файл в корзину размер файла меньше загруженного и поврежден.
Фрагмент кода:
public APIGatewayProxyResponse Get (запрос APIGatewayProxyRequest, контекст ILambdaContext)
{ context.Logger.LogLine(Encoding.ASCII.GetByteCount(request.Body).ToString());
MemoryStream ms = new MemoryStream();
TransferUtility utility = new TransferUtility(new AmazonS3Client("<AccessKey>", "<SecretKey>", Amazon.RegionEndpoint.USEast1));
var checker = new TransferUtilityUploadRequest()
{
InputStream = new MemoryStream(Encoding.ASCII.GetBytes(request.Body)),
BucketName = "<BucketName>",
Key = "<FileName>.pdf"
};
utility.Upload(checker);
var response = new APIGatewayProxyResponse
{
StatusCode = (int)HttpStatusCode.OK,
Body = JsonConvert.SerializeObject(checker),
Headers = new Dictionary<string, string> { { "Content-Type", "application/json" }, { "Access-Control-Allow-Origin", "*" } }
};
return response;
}
Примечание: файл может быть docx или pdf. Также у меня есть код для загрузки файлового потока на S3. Просто нужна информация о получении файла через тип APIGatewayProxyRequest и преобразовании в поток.
Заранее спасибо.