【发布时间】:2019-08-06 01:56:16
【问题描述】:
在使用 page.link URL 前缀(当时唯一的选项)之前,我已经在其他项目中创建了 Firebase 动态链接。但是,当今天为新项目启用动态链接时,这似乎不再是一个选项。看起来docs for custom domains 今天更新了。不幸的是,虽然他们提供了一些有用的示例,但并未以我能理解的方式解释如何解决我的问题。
所以这条消息似乎表明我需要“将链接放在子路径下”。在我看来,在这里添加 /link 路径前缀应该可以做到这一点?但是在进行更改后,我收到了相同的错误消息。
您似乎已经在此托管网站上提供了内容。将链接放在子路径下以避免与现有内容冲突。
我为了尝试解决这个问题,我去了我的项目并添加了建议的托管配置并进行了部署。
firebase.json:
{
"hosting": {
"public": "dist",
"ignore": [
"**/.*"
],
"appAssociation": "AUTO",
"rewrites": [
{
"source": "/link/**",
"dynamicLinks": true
},
{
"source": "**",
"destination": "/index.html"
}
]
}
}
即使等了一个小时,我仍然收到同样的错误,我不知道该怎么办。
请注意,我重写了 /index.html,因为我在 www.devintent.com 上托管了一个 Angular 单页应用程序。
无论我做什么,我都会不断收到此错误,并且Continue 按钮保持禁用状态。我尝试使用我的裸域 devintent.com 而不是 www.devintent.com,但这并没有帮助。我尝试使用 links.devintent.com,但得到了同样的错误。
如果我从Continue 按钮中手动删除disabled,则会收到以下错误消息:
这链接到docs for manually configuring hosting for dynamic links,其中有一些我已经完成的步骤。单击Check Again 按钮只会让我回到上面第一张图片中的相同错误。
不使用自定义域的解决方法
此时我很高兴使用page.link 链接,我只需要创建一个动态链接并在此任务中畅通无阻,但我无法在控制台中找到任何允许我这样做的方法那个。
更新:我发现我需要将子域添加到page.link URL。工具提示最后会显示“或 Google 提供的免费域(例如 yourapp.page.link)”。这不是我想要的那么突出(因为我很长一段时间都没有找到它)。现在使用devintent.page.link 对我来说是一种解决方法。
但是,我不确定为什么自定义域配置不起作用,以及如果具有现有托管配置和自定义域的项目存在这种复杂性,为什么它会成为默认配置。
【问题讨论】:
标签: firebase-hosting firebase-dynamic-links