动态链接自定义路径未应用于 Firebase 身份验证

Dynamic Links Custom Path not applied in Firebase Authentication

我已经设置了 Firebase 动态链接 和 URL,格式如下:a.b.c/d

但是,由 Firebase 身份验证 发送的 电子邮件 包含格式为 a.b.c/?link=... 而不是 a.b.c/d/?link=... 的动态链接,这意味着它们不起作用。

我跟着 this guide / this guide 发送了 link。

每当我手动复制 link 并在 URL 中添加 d/ 时,动态链接将起作用,因为设置了 动态链接 在 Firebase 控制台以及 Firebase 托管 .

firebase.json 中以这种方式进行设置
"appAssociation": "AUTO",
"rewrites": [
  {
    "source": "/d/**",
    "dynamicLinks": true
  }
]

不幸的是,Firebase 身份验证 尚不支持动态链接中的自定义路径,正如 bojeil 指出的那样(由 Firebase 支持确认)。
不幸的是,capturing URL segments in Firebase Hosting redirects 不支持 查询参数 ,需要将 /?link=... 重定向到 /d/?link=...

由于这两个不幸的情况,我只是简单地使用一些JavaScript将任何请求重定向到/?link=.../d/?link...

const link = new URLSearchParams(window.location.search).get('link')
if (window.location.pathname == '/' && link != null && link != '') window.location = `a.b.c/d/${window.location.search}`