Firebase 动态链接似乎(重新)格式化目标 link?

Firebase Dynamic Links seems to (re)format the target link?

我的应用程序的用户可以生成一些文件并将它们存储在 Firebase 存储桶中。文件的 link 如下所示:

https://firebasestorage.googleapis.com/v0/b/myApp/users%2FuserID%2Ffile.mp3?alt=media&token=xxxx-xxxx-xxxx

这是一个带有令牌的 link,因此可以公开访问。现在我想使用基于自定义域的短 link,为此我使用动态 link。我能够使用 Dynamic Links REST API (mydomain.com/link/xxxxxxxxxx) 成功生成一个简短的 link。 然而,当我跟随短 link 时,我最终被重定向到 link,如下所示:

https://firebasestorage.googleapis.com/v0/b/myApp/users/userID/file.mp3?alt%3Dmedia&token=xxxx-xxxx-xxxx

注意第一个 link 中的“%2F”在最后一个中变成了“/”,并且'alt=' 变成了 'alt%3D'。这足以让 link 不再工作,因为我收到消息:

{
  "error": {
    "code": 400,
    "message": "Invalid HTTP method/URL pair."
  }
}

显然,这是动态 link 重定向期间发生的 URL 编码问题。我正在“POST”到动态 Link API 正好是第一个 link,但不知何故它的编码在这个过程中的某个地方被改变了。但是我找不到任何提及此类事情的文档,而且我没有看到任何会导致这种情况的参数,因此到目前为止我没有解决方案...

有人有想法吗?

在 GET 请求中使用它们之前,我最终在 Javascript 中重新处理动态链接产生的链接以更正它们(例如,将 'alt%3D' 替换为 'alt=')。

我可以负担得起这种变通方法,因为链接的变化部分几乎总是相同的。