有没有办法在Gobase中使用相框,电子邮件和密码在Firebase中创建用户。可以使用createUserWithEmailAndPassword(email, password)
使用Javascript创建用户但是我需要与Golang相同。有包装或功能吗?我正在使用firego与Firebase连接。
答案 0 :(得分:10)
最近,Google将Go Lang添加到使用Firebase Admin SDK的Firebase身份验证支持的编程语言列表中。
创建用户:
params := (&auth.UserToCreate{}).
Email("user@example.com").
EmailVerified(false).
PhoneNumber("+1234567890").
Password("secretPassword").
DisplayName("Donald Drump").
PhotoURL("http://www.example.com/12345678/photo.png").
Disabled(false)
u, err := client.CreateUser(context.Background(), params)
if err != nil {
log.Fatalf("error creating user: %v\n", err)
}
log.Printf("Successfully created user: %v\n", u)
如果您想使用自己的用户ID创建一个用户,并且不希望Firebase自动生成ID,那么:
params := (&auth.UserToCreate{}).
UID(uid).
Email("user@example.com").
PhoneNumber("+1234567890")
u, err := client.CreateUser(context.Background(), params)
if err != nil {
log.Fatalf("error creating user: %v\n", err)
}
log.Printf("User created successfully : %v\n", u)
更新用户:
params := (&auth.UserToUpdate{}).
Email("user@example.com").
EmailVerified(true).
PhoneNumber("+1234567890").
Password("newPassword").
DisplayName("Donald Drump").
PhotoURL("http://www.example.com/12345678/photo.png").
Disabled(true)
u, err := client.UpdateUser(context.Background(), uid, params)
if err != nil {
log.Fatalf("error updating user: %v\n", err)
}
log.Printf("Successfully updated user: %v\n", u)
答案 1 :(得分:2)
没有针对Go的Firebase SDK。但Firebase的某些部分具有REST API,允许您使用几乎所有平台/技术中的这些功能。 Firebase数据库是其中一项功能,Firego库是Firebase Database for Go开发人员REST API的包装。
不幸的是,没有用于在Firebase身份验证中创建用户的REST API。因此,无法通过Firego或通过Go代码中的公共REST API创建用户。
最简单的解决方案是在您控制的应用服务器上创建REST端点,然后使用Firebase Admin SDK到create the user。