Firebase生成密码重置链接提示动态链接域未配置或未授权如何解决
问题根因
dynamicLinkDomain参数格式错误:你传入的参数值为带路径和协议的https://example.com/links,但该参数仅支持填写不带协议、不带路径的纯域名,不符合格式要求会触发校验失败。- 域名未完成控制台授权:仅在
firebase.json中配置重写规则不代表完成域名授权,你需要先在Firebase控制台「动态链接」板块主动添加自定义域名并完成所有权验证,才可以在API中调用。 - 无参数时的默认匹配失败:如果你不传
dynamicLinkDomain参数,Firebase会默认读取项目配置的第一个动态链接域名,若项目未提前配置任何动态链接域名,同样会触发未授权报错。
解决步骤
- 进入Firebase控制台「动态链接」页面,按照引导添加你的自定义域名
example.com,完成所有权验证,若你不想配置自定义域名,直接使用Firebase默认提供的xxx.page.link格式动态链接域名也可。 - 修正
ActionCodeSettings配置,dynamicLinkDomain仅填写纯域名部分:
ActionCodeSettings codeSettings = ActionCodeSettings( url: "https://example.com/links/reset", handleCodeInApp: false, dynamicLinkDomain: "example.com" );
- 执行
firebase deploy --only hosting命令确保重写规则已部署到线上生效。 - 重新部署云函数后再次调用生成密码重置链接的接口即可。
内容的提问来源于stack exchange,提问作者Tom3652
相关产品推荐
相关产品推荐

