c# – 访问未使用.Net SDK的美国区域的存储桶时遇到问题

c# – 访问未使用.Net SDK的美国区域的存储桶时遇到问题,第1张

概述我最近一直在尝试编写代码来添加和删除Amazon S3存储桶中的内容.我是Amazon S3和AmazonWS .Net SDK的新手. 存储区域端点是http://sqs.eu-west-1.amazonaws.com所以我构建了我的客户端,如下所示: _s3Client = AWSClientFactory.CreateAmazonS3Client(accessKey, awsSecretKe 我最近一直在尝试编写代码来添加和删除Amazon S3存储桶中的内容.我是Amazon S3和AmazonWS .Net SDK的新手.

存储区域端点是http://sqs.eu-west-1.amazonaws.com所以我构建了我的客户端,如下所示:

_s3ClIEnt = AWSClIEntFactory.CreateAmazonS3ClIEnt(accessKey,awsSecretKey,new AmazonS3Config().WithServiceURL("http://sqs.eu-west-1.amazonaws.com"));

如果我遗漏了AmazonS3Config位,我会收到此错误:

A redirect was returned without a new location. This can be caused by
attempting to access buckets with periods in the name in a different
region then the clIEnt is configured for.

当我输入AmazonS3Config位时,我不再收到该错误,但我似乎无法访问此存储桶或我通常可以访问的任何其他存储桶.我发送的任何请求都返回null.

我已经使用配置到标准美国区域的其他存储桶测试了我的代码,这一切都运行良好.唯一的区别在于CreateAmazonS3ClIEnt方法,我在其中设置了具有EU端点的配置.

有人可以给我一些指导,说明我应该如何让我的客户在欧盟(爱尔兰)地区工作.我一直在寻找几个小时,我所遵循的每个教程或文档到目前为止都没有工作.

解决方法 只需使用标准端点 – s3.amazonaws.com
AmazonS3Config S3Config = new AmazonS3Config {    ServiceURL = "s3.amazonaws.com",CommunicationProtocol = Amazon.S3.Model.Protocol.http};AmazonS3 clIEnt = Amazon.AWSClIEntFactory.CreateAmazonS3ClIEnt(AWS_Key,AWS_SecretKey,S3Config);PutObjectRequest UploadToS3Request = new PutObjectRequest();UploadToS3Request.WithfilePath(localPath)                 .WithBucketname(bucket)                 .WithKey(key);clIEnt.PutObject(UploadToS3Request);
总结

以上是内存溢出为你收集整理的c# – 访问未使用.Net SDK的美国区域的存储桶时遇到问题全部内容,希望文章能够帮你解决c# – 访问未使用.Net SDK的美国区域的存储桶时遇到问题所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1240993.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-06
下一篇2022-06-06

发表评论

登录后才能评论

评论列表(0条)

    保存