从 Azure Function 中的 azure blob 容器读取八位字节流时​​出现超时错误

Timeout error when reading octet-stream from azure blob container in Azure Function

我有一个 azure 函数,我需要从 azure blob 容器中获取图像,然后将其发送到外部 API。为此,我将它下载到内存流中,然后将其作为流发送到 API.

我为此使用的代码如下:

           var storageConnection = Environment.GetEnvironmentVariable("AZURE_STORAGE_CONNECTION_STRING");
           var containerName = Environment.GetEnvironmentVariable("BlobContainerName");

           var cloudStorageAccount = CloudStorageAccount.Parse(storageConnection); 
           var blobClient = cloudStorageAccount.CreateCloudBlobClient();

           var cloudBlobContainer = blobClient.GetContainerReference(containerName); 
           var blockBlob = cloudBlobContainer.GetBlockBlobReference(filename);

           var memStream = new MemoryStream();
           blockBlob.DownloadToStream(memStream);

这适用于普通图像,但不知何故不适用于保存为八位字节流的项目(通过特定上传页面上传图像时发生)。

有谁知道这是为什么以及如何解决它?
提前致谢!

如果其他人遇到这个问题,我很容易解决:

而不是

var memStream = new MemoryStream();
blockBlob.DownloadToStream(memStream);

我用过

var stream = await blockBlob.OpenReadAsync();