在我的angular应用程序中注册时,我需要通过email和密码进行身份验证。所需的auth.service.
和onSubmit
方法如下:在firebase认证部分中启用了电子邮件和密码登录提供程序。
auth.service.ts
signup(email: string, password: string) {
return this.http.post('https://identitytoolkit.googleapis.com/v1/accounts:signInWithCustomToken?key=[REPLACE_WITH_MY_API_KEY]', {
email: email,
password: password,
returnSecureToken: true
})
}
auth.component.ts
onSubmit(form: NgForm) {
if (!form.valid) {
return;
}
const email = form.value.email;
const password = form.value.password;
if (this.isLoginMode) {
//....
} else {
this.authService.signup(email, password).subscribe(responseData => {
console.log(responseData);
}, err => {
console.log(err);
});
}
form.reset();
}
根据firebase文档,应该向this传递一个令牌参数。如何生成它并在此注册方法中添加它?以这种方式执行该方法时会出现400错误。
您使用错误的url在firebase上注册电子邮件和密码看看这一节:https://firebase.google.com/docs/reference/rest/auth#section-create-email-password