【发布时间】:2021-04-08 16:35:06
【问题描述】:
我在 firebase 存储中存储了一个音频文件,我想将其带有访问令牌的 url 作为参数传递给 firebase 动态链接。
我想让我的 file.component,ts 在 whatsapp、FB 等上公开分享,下面是我获取文件参数的代码
this.activatedRoute.queryParams.subscribe(params => {
this.userName = params["user"];
this.audioPath = params["audio"]; //firebase storage audio with access token
this.docId = params["docId"];
this.docTitle = params["title"];
this.userId = params["userId"];
)
现在我想将以上所有参数作为链接传递给 firebase 动态链接 http.post 调用以获取短链接。
audio 参数包含到 firebase 存储访问 url 的 url 以及访问令牌,例如
https://firebasestorage.googleapis.com/v0/b/<site>/o/audio%2Fsong1-min.mp3?alt=media&token=xxxx-xxxxx-xxxx-xxxxx
当我将此音频变量传递给动态链接时,它会删除令牌并减少路径
https://firebasestorage.googleapis.com/v0/b/<site>/o/audio%2Fsong1-min.mp3
因此,当我收到短链接时,它会在 UI 上显示所有其他字段以及音频标签,但 src 已删除令牌,因此如果在 whats 应用程序、FB 等上共享,外部用户无法播放音频。
无论如何我可以发送这个 Firebase 存储访问 url,因为它位于动态链接中,以便播放音频。
【问题讨论】:
标签: javascript angular firebase google-cloud-firestore firebase-dynamic-links