Amazon s3 .NET SDK,您尝试访问的存储区必须使用指定的端点进行寻址

Pra*_*thi 9 c# amazon-s3 windows-phone-8

我在widows phone 8应用程序中使用amazon .NET SDK上传图像,代码工作正常.现在我得到一个例外

您尝试访问的存储区必须使用指定的端点进行寻址.请将以后的所有请求发送到此端点.

我已更新到最新版本的SDK 2.0.2.2,更新有什么变化吗?

我的代码

string awsID = "myid";
    string secretKey = "mysecretkey";
    try{
   AmazonS3Client s3Client = new AmazonS3Client(awsID, secretKey,RegionEndpoint.USWest1);
     string s="";
     if (IsolatedStorageSettings.ApplicationSettings.Contains("selectedphoto1"))
     {

       s = IsolatedStorageSettings.ApplicationSettings["selectedphoto1"] as string;
 }
     var InputStream = App.GetResourceStream(new Uri("appname;component/Assets  /call.png", UriKind.Relative));
        var request = new PutObjectRequest()
        {
            BucketName = "mybucketname",

            ContentType="image/png",
           Key=s+".jpg",
           InputStream = myFileStream,
        };

        await s3Client.PutObjectAsync(request);
 }
    catch (Exception ex)
    {
        Console.Write(ex.InnerException);
    }
Run Code Online (Sandbox Code Playgroud)

Aja*_*kam 8

发生这种情况是因为存储桶区域不正确.在S3存储桶的Amazon控制台上检查您的区域,并在配置文件和代码中配置相同的区域.

例如:

AmazonS3Client s3Client = new AmazonS3Client(awsID, secretKey, RegionEndpoint.APNortheast1);

<add key="AWSRegion" value="eu-west-1" />
Run Code Online (Sandbox Code Playgroud)