从AWS S3获取对象作为流

rn

我试图弄清楚是否有可能返回从我的AWS S3存储桶中获取的对象的某种流(可能是内存流?)。

S3存储桶包含许多不同类型的图像,文档等。所有这些都应在我的网站上使用。但是,我不想显示我的AWS S3存储桶的路径。
这就是为什么我试图创建一个流并动态显示图像和可下载文档的原因,而不是完整路径。这有意义吗?:-)

我正在使用C#/。NET AWS开发工具包。

期待听到任何指向的想法和指示!

public FileStream GetFile(string keyName)
{
    using (client = new AmazonS3Client(Amazon.RegionEndpoint.USEast2))
    {
        GetObjectRequest request = new GetObjectRequest
        {
            BucketName = bucketName,
            Key = keyName
        };

        using (GetObjectResponse response = client.GetObject(request))
        using (Stream responseStream = response.ResponseStream)
        using (StreamReader reader = new StreamReader(responseStream))
        {
            // The following outputs the content of my text file:
            Console.WriteLine(reader.ReadToEnd());
            // Do some magic to return content as a stream
        }
    }
}
月菊

在.NET 4中,您可以使用Stream.CopyTo将ResponseStream的内容(即Amazon.Runtime.Internal.Util.MD5Stream复制到MemoryStream中。

GetObjectResponse response = await client.GetObjectAsync(bucketName, keyName);
MemoryStream memoryStream = new MemoryStream();

using (Stream responseStream = response.ResponseStream)
{
    responseStream.CopyTo(memoryStream);
}

return memoryStream;

除了使用正在创建的请求client.GetObjectAsync(bucketName, keyName)进行调用以外GetObject,在哪里

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Python 3 Boto 3,AWS S3:获取对象URL

AWS S3对象列表

Laravel AWS S3图像流视图

AWS S3签名对象无法获取

无法从S3获取对象元数据。在AWS Rekognition中检查对象密钥,区域和/或访问权限

从Amazon AWS S3下载对象时,流仅部分读取

使用AWS S3 Java客户端获取目录和对象元数据

获取对象时Ansible AWS S3在目录checksuom上失败

如何使用aws_s3_bucket_object数据源获取s3对象的列表?

如何使用aws cli获取最新版本的s3对象?

AWS CLI S3获取对象标签

如何使Python AWS Lambda打开存储在S3中的电子邮件作为电子邮件对象

捕获AWS S3获取对象流错误Node.js

将AWS S3作为对象存储在其中之后,如何从AWS S3获得可读电子邮件?

节点AWS S3获取对象元数据吗?

如何使用pyhton 3.8获取AWS S3对象的位置/ URL?

如何使用Rails从AWS S3获取对象URL(link)(API JSON Response)

AWS S3获取特定密钥的对象标签

AWS S3将内容作为附件发送

AWS S3:如何获取对象版本的LastModified?

如何使用CloudFront从AWS S3获取具有别名的对象URL

如何测试AWS S3获取对象方法?

AWS S3 对象权限

通过 Carrierwave 上传时,获取要在 Rekognition 中使用的 AWS S3 对象

AWS S3 软删除对象

AWS S3 读取流不返回任何数据

如何在异步函数中创建 AWS S3 对象的读取流?

使用 aws s3 对象作为使用 python-requests 的 HTTP POST 的输入

AWS。S3。如何按桶(listObjectsV2)获取对象列表?