我正在尝试对 firebase 进行电子邮件身份验证。
我正在关注文档,但出现此错误:
UNAUTHORIZED_DOMAIN:Domain not whitelisted by project
我看到了这个灵魂:
Firebase Auth/unauthorized domain. Domain is not authorized
它没有工作,所以我去尝试创建一个动态链接,因为我在这里看到我需要创建动态链接:
Firebase says "Domain not whitelisted" for a link that is whitelisted
这也没有用。我在尝试创建动态链接时得到:
An error occurred when creating a new Dynamic Link
所以我去尝试了这个:
Firebase console create dynamic link error
仍然是同样的问题
所以现在我不知道还能做什么。
编码:
private void sendEmail(String email) {
Log.d(TAG, "sendEmail: here in sendEmail");
String url = "https://.........";
ActionCodeSettings actionCodeSettings = ActionCodeSettings.newBuilder().setUrl(url)
.setHandleCodeInApp(true)
.setAndroidPackageName("com.myapp_pack.my_app_name", true, "12").build();
auth.sendSignInLinkToEmail(email, actionCodeSettings).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
Log.d(TAG, "onComplete: email sent homie!");
} else{
Log.d(TAG, "onComplete: task failed " + task.getException().getMessage());
}
}
});
}
最佳答案
这对我很有用,使用 Firebase v.9(当前最后一个版本是 2022 年 1 月)
尝试不创建动态链接,但检查您是否不仅列出“localhost”(或您将在哪里为项目提供服务),还列出您传递给作为“sendSignInLinkToEmail”的第三个参数传递的对象的 url 属性的 url。例子:
const config = {
url: "https://example.com/",
*...other properties*
};
sendSignInLinkToEmail(auth, email, config).catch((error) => {
console.log(error);
});
在这种情况下,您将转到 firebase 控制台并添加白名单“example.com”。免责声明:检查这解决了我的问题,因为我无意中只是将我在开发模式下为我的项目提供服务的 url 列入白名单。
关于java - 为什么我得到 UNAUTHORIZED_DOMAIN :Domain not whitelisted by project?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60066794/