4

我无法.mp4将存储在 Azure blob 存储中的视频显示在 Azure 上托管的网站中。视频类型设置为video/mp4,存储帐户不公开,但它链接到 web 角色,我已经使用这段代码更新了版本:

var credentials = new StorageCredentials("myaccountname", "mysecretkey"); 
var account = new CloudStorageAccount(credentials, true); 
var client = account.CreateCloudBlobClient(); 
var properties = client.GetServiceProperties(); 
properties.DefaultServiceVersion = "2012-02-12"; 
client.SetServiceProperties(properties); 

我没有使用任何视频播放器,只是 HTML5 视频标签。我也不需要任何花哨的东西,我只想播放视频。

GET查看 Chrome 开发工具中的网络选项卡,获取视频的请求有两个条目。第一个状态为(pending),下一个为(canceled)

我还给了它一个指向网站内容文件夹中视频的链接。这个也开始了,pending但用 a 解决了204 Partial Content,视频播放得很好。

我没有东西可看,感谢任何帮助和指点。

4

1 回答 1

8

根据您上面的评论,您需要的是Shared Access Signature. 使用下面的代码在您的 mp4 文件上创建共享访问签名。

        var credentials = new StorageCredentials("myaccountname", "mysecretkey");
        var account = new CloudStorageAccount(credentials, true);
        var container = account.CreateCloudBlobClient().GetContainerReference("yourcontainername");
        var blob = container.GetBlockBlobReference("yourmp4filename");
        var sas = blob.GetSharedAccessSignature(new SharedAccessBlobPolicy()
        {
            Permissions = SharedAccessBlobPermissions.Read,
            SharedAccessExpiryTime = DateTime.UtcNow.AddHours(1),//Set this date/time according to your requirements
        });
        var urlToBePlayed = string.Format("{0}{1}", blob.Uri, sas);//This is the URI which should be embedded in your video player.
于 2013-10-29T10:56:35.157 回答