将图像上传到Amazon S3存储桶,.NETCore2
答
你可以很容易地使用现有的软件开发工具包
.NET核心2.0支持.NET 2.0标准,这意味着针对任何的NuGet包实现这一目标。 .NET标准2.0及以下版本在.NET Core 2.0上受支持。适用于.NET的AWS开发工具包面向.NET Standard 1.3,这意味着您可以将它用于.NET Core 1.x或.NET Core 2.0。
您可以导入AWSSDK.S3
nuget包,其中包含用于与S3存储桶进行交互的库。
例子:
// if you happened to store this in your appsettings.json
var accessKey = _configuration["AwsAccessKey"];
var secretKey = _configuration["AwsSecretKey"];
var client = new AmazonS3Client(accessKey, secretKey, Amazon.RegionEndpoint.USEast1);
var request = new PutObjectRequest
{
BucketName = "BucketName",
Key = "KeyName",
FilePath = "FilePath"
};
var response = client.PutObjectAsync(request).GetAwaiter().GetResult();
进一步的细节和示例,请参阅Upload an Object Using the AWS SDK for .NET
更新 - 修改以显示例如通过在ACCESSKEY和中SecretKey的同时创造客户
我们如何访问密钥和安全密钥。它是否自动从AppSetting.Json –
一种方法是从appsettings.json读取。你可以简单地将它传递给'AmazonS3Client'的构造函数。我已经更新了答案以示例。如果不符合您的需求,还有其他许多方法可以进行身份验证,请参阅[此处](http://docs.aws.amazon.com/sdk-for-net/v2/developer-guide/net- dg-config-creds.html) –
我的疑问是,如果我将它保存在配置文件文件中,并将配置文件位置添加到appSettings中,那么SDK是否会在客户端创建时自动读取它? –