c#-在.NET Core中配置AWS S3客户端
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c#-在.NET Core中配置AWS S3客户端,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1680字,纯文字阅读大概需要3分钟。
内容图文
我正在遵循有关在.NET Core中配置AWS开发工具包以将文件上传到S3存储桶的this指南.
我的app.settings.json文件包含以下内容:
{
"AWS": {
"Region": "us-west-1",
"AccessKey": "access_key",
"SecretKey": "secret_key"
}
...
}
这是我的StartUp类:
public class Startup
{
public IContainer ApplicationContainer { get; private set; }
public IConfiguration Configuration { get; }
public Startup(IHostingEnvironment env)
{
var builder = new ConfigurationBuilder()
.SetBasePath(env.ContentRootPath)
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true)
.AddEnvironmentVariables();
Configuration = builder.Build();
}
public IServiceProvider ConfigureServices(IServiceCollection services)
{
services.AddOptions();
services.AddMvc();
services.AddDefaultAWSOptions(Configuration.GetAWSOptions());
services.AddAWSService<IAmazonS3>();
}
}
我相信这意味着我可以将客户端对象注入将使用app.settings值的类中.我正在尝试注入对象,并像这样进行S3调用:
public class FileUploader
{
private readonly IAmazonS3 client;
public FileUploader(IAmazonS3 client)
{
this.client = client;
}
public async Task Upload()
{
var request = new PutObjectRequest
{
BucketName = "bucketName",
Key = "Test",
FilePath = "test_file.txt",
ContentType = "text/plain"
};
var cancellationToken = new CancellationToken();
var response = await client.PutObjectAsync(request, cancellationToken);
}
}
当前,当我尝试执行此操作时,该应用程序在尝试注入S3Client时挂起.最初,我并不是要注入S3Client,而是要在我的FileUploaded类中实例化它.那时候我遇到了一个错误,因为我没有指定AccessKey等,也找不到设置它的方法.
我究竟做错了什么?
解决方法:
看来我应该只在我的应用程序设置中包括地区和个人资料.该配置文件应使用信息here生成.
内容总结
以上是互联网集市为您收集整理的c#-在.NET Core中配置AWS S3客户端全部内容,希望文章能够帮你解决c#-在.NET Core中配置AWS S3客户端所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。