【问题标题】:Amazon S3 .NET: Upload base64 image data?Amazon S3 .NET:上传 base64 图像数据?
【发布时间】:2018-07-16 00:45:24
【问题描述】:

我正在尝试将图像转换为 base64,并尝试使用 C# 将其上传到 AWS S3。我不断收到未找到远程服务器的异常。但我能够以编程方式登录并列出我拥有的存储桶。 你能找出问题所在吗?

    static void Main(string[] args)
    {

        string configaccess = ConfigurationManager.AppSettings["AWSAccesskey"];
        string configsecret = ConfigurationManager.AppSettings["AWSSecretkey"];

        var s3Client = new AmazonS3Client(
            configaccess,
            configsecret,
            RegionEndpoint.USEast1
        );

        Byte[] bArray = File.ReadAllBytes("path/foo.jpg");
        String base64String = Convert.ToBase64String(bArray);

        try
        {
            byte[] bytes = Convert.FromBase64String(base64String);

            using (s3Client)
            {
                var request = new PutObjectRequest
                {
                    BucketName = "bucketName",
                    CannedACL = S3CannedACL.PublicRead,
                    Key = string.Format("bucketName/{0}", "foo.jpg")
                };
                using (var ms = new MemoryStream(bytes))
                {
                    request.InputStream = ms;
                    s3Client.PutObject(request);
                }
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine("AWS Fail");
        }

    }

【问题讨论】:

    标签: c# amazon-s3 image-upload


    【解决方案1】:

    我已经使用相同的代码进行了测试,并且对我来说工作正常。您无需在 Key 中指定存储桶名称。如果要将此文件存储在存储桶内的任何文件夹中,我们可以指定文件夹名称。

    Key = string.Format("FolderName/{0}", "foo.jpg")。

    【讨论】:

      猜你喜欢
      • 2014-06-26
      • 2015-09-05
      • 2019-09-20
      • 2011-11-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-17
      • 2018-01-10
      相关资源
      最近更新 更多