firebase - react-native-firebase 返回应用程序并在电子邮件验证后使用动态链接进行验证
问题描述
我正在努力思考如何正确地做到这一点。
我想做的是:
- 发送验证邮件
- 当用户点击验证链接时,它会将他们发送回应用程序到特定的视图/路线
目前我的工作方式是这样的:
我用这个发送电子邮件验证链接:
await auth().currentUser.sendEmailVerification({
handleCodeInApp: true,
url: "https://MYAPP.page.link/email-verification"
});
现在在 firebase 控制台中,我不得不设置一个以https://
主链接开头的 URL。这是我的第一个问题,我不想打开网页;我想在应用程序中打开一个链接,非常简单,比如myapp://email-verification
这迫使我,而不是依赖已经在我的应用程序中设置的深度链接功能react-navigation
,手动捕获打开,然后专门处理虚假链接。我已经将链接设置到我们网站上有关该应用程序的页面,但这几乎是完全任意的。现在我必须在我的 App.js 中做:
useEffect(()=>{
function handleDynamicLink(url) {
if (url == 'https://MYWEBSITE.com/some-random-link-that-isnt-an-app-deeplink') {
// Navigate to the View / Link I actually want to
}
}
const unsubscribe = dynamicLinks().onLink(handleDynamicLink);
dynamicLinks().getInitialLink()
.then(link => link && handleDynamicLink(link));
return ()=>{
unsubscribe();
}
},[]);
如果我尝试将 URL 设置为sendEmailVeification
我想使用com.myapp://email-verification
Firebase 所说的内容Domain not whitelisted
,并且无法添加com.myapp://email-verification
,因为它不是域,而是协议和路由。
解决方案
推荐阅读
- c# - 为集合中的多个对象创建使用块
- mysql - Dream Weaver 未检测到数据库
- encryption - 如何将 GPG 文件加密为与默认不同的标准
- webpack - webpackChunkName 在 CRA 应用程序中没有得到尊重
- html - Reactjs İmage 源看起来像 src="[object Module]"
- r - 如何根据R中字典中的单词标记文本是正面的还是负面的?
- kubernetes - Kubernetes:我们需要在 apiserver manifest 中设置 http_proxy 和 no_proxy 吗?
- excel - 我需要一个 VBA 代码,在 Userform 将日期输入数据库后,刷新单元格的方式与进入它并按 Enter 的方式相同
- java - 如何将异构 JSON 数组映射到 Java 对象?
- scala - 带有自定义验证的 Play Framework JSON 自动映射