Azure Blob存储是否默认支持部分内容?

Azure Blob存储是否默认支持部分内容?,azure,video-streaming,rendering,azure-storage-blobs,azure-blob-storage,Azure,Video Streaming,Rendering,Azure Storage Blobs,Azure Blob Storage,我正在使用Azure blob存储来存储我的所有图像和视频。我已经实现了上传和获取功能,它工作得很好。我在加载视频时面临一个问题,因为当我使用在Azure blob存储上上载视频后生成的url时,它会先下载所有内容,然后再将其呈现给用户。因此,如果视频大小为100MB,它将下载所有100MB,直到用户无法看到视频为止 我做了大量的研发工作,我知道在渲染视频时,我需要获取部分内容(状态206),而不是一次获取整个视频。在添加了请求头“Range:bytes-500”之后,我试图点击博客url,但它

我正在使用Azure blob存储来存储我的所有图像和视频。我已经实现了上传和获取功能,它工作得很好。我在加载视频时面临一个问题,因为当我使用在Azure blob存储上上载视频后生成的url时,它会先下载所有内容,然后再将其呈现给用户。因此,如果视频大小为100MB,它将下载所有100MB,直到用户无法看到视频为止

我做了大量的研发工作,我知道在渲染视频时,我需要获取部分内容(状态206),而不是一次获取整个视频。在添加了请求头“Range:bytes-500”之后,我试图点击博客url,但它仍然在下载全部内容。因此,我检查了一些开源视频URL,并尝试点击视频URL以及“范围”请求头,它成功地给出了206响应状态,这意味着它正确地给出了部分内容,而不是完整的视频

我读了一些论坛,他们说Azure存储支持部分内容概念,需要从属性中启用它。但是我已经检查了Azure存储帐户下的所有选项,但没有找到任何可以启用此功能的内容

有人能帮我解决这个问题吗?或者如果Azure门户上有什么我需要启用的东西吗?这是我一周以来一直在做的研发工作。任何帮助都将不胜感激


谢谢大家!!保持安全。

假设未启用
接受范围
,我从中得到它需要的信息

下面是实现它的示例代码

            var credentials = new StorageCredentials("account name", "account key");
            var account = new CloudStorageAccount(credentials, true);
            var client = account.CreateCloudBlobClient();
            var properties = client.GetServiceProperties();
            properties.DefaultServiceVersion = "2019-07-07";
            client.SetServiceProperties(properties);
下面是设置属性后的返回标题比较

之前

之后


假设视频内容是MPEG-4,问题可能是媒体本身需要将moov原子位置从文件的末尾更改为开头。浏览器在文件中找到moov atom之前不会渲染视频,因此您需要确保atom位于文件的开头,这可以使用ffmpeg和“FastStart”来完成。这里有一篇更详细的好文章:

你解决了这个问题吗?@ZiadAkiki,很抱歉回复太晚,但是是的,我通过更新azure blob存储API版本解决了这个问题。嗨@Aaron,我更新了azure blob存储API版本,解决了这个问题。