我使用visual studio空模板创建了一个无服务器的AWS。我正在尝试向其发送一个文件,使用C#在内部上传到S3。我可以通过控制台应用程序上传文件。我需要帮助: 一个。如何通过Insomnia或Postman将文件发送到API - 现在可以做到 湾如何接收文件,以便在我上传S3时,我可以按照我在API中发送的方式直接下载.--现在能够做到了
[编辑] C。尝试将文件保存到存储桶时,文件大小小于上载文件并且已损坏。
代码段:
public APIGatewayProxyResponse Get(APIGatewayProxyRequest request, ILambdaContext context)
{
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类型接收文件并转换为流的信息。
提前致谢。