gpt4 book ai didi

angular - 刷新 Azure Blob 存储的 SAS token

转载 作者:行者123 更新时间:2023-12-03 02:21:28 25 4
gpt4 key购买 nike

我在 Azure Bob 存储中保存了一个视频文件 (mp4)。我通过 SAS token 访问此视频文件。 SAS token 将在 45 秒后过期。假设视频时长为 5 分钟,则显示的视频将仅播放 45 秒并停止。

我想要做的是每 45 秒获得一个新的 SAS token ,并且视频将连续播放而不会停止。如何更改我的代码以便连续显示视频?

注意:我的代码只会播放视频 45 秒,然后停止。我正在使用 Angular。

ngOnInit(): void {
this.getVideoURL ();
}


getVideoURL () : Observable <string>
{
return this.httpClient.get<string>('https://url.com/getsastoken', { responseType: "json"})
.pipe(map (
(data: string) =>
{
this.sasTOken = data;
this.urlOfVideo = 'https://myblob.blob.core.windows.net/app.mp4?'+ this.sasTOken;
}
));
}

HTML

            <video oncontextmenu="return false;"  id="vid1" class="amp-default-skin" controlsList="nodownload" autoplay controls width="640" height="400" poster="poster.jpg" data-setup='{"nativeControlsForTouch": false}'>
<source src={{urlOfVideo}} >
</video>

最佳答案

您无法更改 SAS,而且我怀疑您能否轻松修改代码以频繁更改 URI 上的 SAS token 。

但是:您可以创建存储访问策略(更多信息 here )。在查看存储视频的容器时,您将在门户中找到此选项(访问策略不能在单个 blob 上设置;相反,它们是在特定容器上设置的)。对于视频观看,您应该将其设置为仅具有读取权限。

然后,您可以在策略上设置开始/停止时间(我还没有尝试使用 45 秒的窗口,但我怀疑这会起作用)。设置完成后,您可以根据策略生成 SAS。此时,将 SAS 添加到视频的 URI 将授予最终用户查看/流式传输您的视频内容的能力,直到过期时间。

独立于 SAS,您可以编辑(或删除)SAS 所基于的访问策略。因此...就您的情况而言,您可以定期延长保单的结束日期(从而保持基于 SAS 的 URI 有效)。请注意,任何更改最多需要 30 秒才能生效。另请注意,该策略将应用于给定容器内的所有 blob。

我提到了门户,以便您可以尝试策略/SAS,但这也可以通过 SDK 调用来实现(例如 here 是 .NET SDK 的文档)。

关于angular - 刷新 Azure Blob 存储的 SAS token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68671540/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com