猿问

Amazon S3 存储桶 C# API 未捕获错误

为(可能)结构不佳的问题道歉,因为这是我第一次在这里发帖。


我正在使用 Amazon 的 AWS API for .NET 将文件保存到存储桶。查看其他示例和文档,我想出了下面的方法。该方法执行成功,但没有文件上传到 S3 存储桶。我不确定是否有任何错误,但无法检查 Upload() 是一个 void 方法并且没有抛出异常。


我不完全确定我是否提供了正确的信息,或者是否有失败。


有什么方法可以捕获潜在的上传错误,或监控上传进度?还是我做错了什么?


    public static void AddItemToStorage(byte[] byteArray, string itemName)

    {

        MemoryStream itemStream = new MemoryStream(byteArray);


        // sign in information

        var credentials = new Amazon.Runtime.BasicAWSCredentials(

            "APIKey",

            "APIPassword"

            );


       // Link to client

       Amazon.S3.AmazonS3Client client = new Amazon.S3.AmazonS3Client(credentials, Amazon.RegionEndpoint.EUCentral1);


        TransferUtility tu = new TransferUtility(client);


        // Actual file is stored in a GUID folder to make sure there are no collisions with file names

        string bucket = "bucket_name_here/" + Guid.NewGuid().ToString(); 

        string item = itemName.Replace(" ", "_");


        itemStream.Seek(0, SeekOrigin.Begin);

        tu.Upload(itemStream, bucket, item);


        // url would be: http://bucket_here/GUID_Folder/itemName.ext/

    }


holdtom
浏览 279回答 1
1回答
随时随地看视频慕课网APP
我要回答