Firebase auth().createUser-发出请求时出错:超时10000毫秒
我试图通过Firebase中的一个特定函数包含一个用户列表(超过50个)。这是我的密码:Firebase auth().createUser-发出请求时出错:超时10000毫秒,firebase,firebase-authentication,Firebase,Firebase Authentication,我试图通过Firebase中的一个特定函数包含一个用户列表(超过50个)。这是我的密码: Object.keys(newUsers).forEach((key) => { console.log(newUsers[key]['name']); admin.auth().createUser({ uid: key, email: newUsers[key]['email'] password: newUsers[key]['In
Object.keys(newUsers).forEach((key) => {
console.log(newUsers[key]['name']);
admin.auth().createUser({
uid: key,
email: newUsers[key]['email']
password: newUsers[key]['InitialPwd'],
disabled: false,
emailVerified: false,
displayName: newUsers[key]['name'],
}).then((userRecord) => {
return console.log('Success');
}).catch(function(error) {
console.log("Error:", error);
});
});
错误为(对于每条记录):
{错误:发出请求时出错:超过10000毫秒的超时时间。
在FirebaseAppError.FirebaseError[作为构造函数](/srv/node_modules/firebase admin/lib/utils/error.js:39:28)
在firebase apperror.PrefixedFirebaseError[作为构造函数](/srv/node_modules/firebase admin/lib/utils/error.js:85:28)
在新FirebaseAppError(/srv/node_modules/firebase admin/lib/utils/error.js:119:28)
at/srv/node_modules/firebase admin/lib/utils/api request.js:117:23
在
在进程中。_tickDomainCallback(internal/process/next_tick.js:228:7)errorInfo:{code:
“应用程序/网络超时”,
消息:“发出请求时出错:超过10000毫秒的超时时间。”},codePrefix:“应用程序”}
如何解决此问题?云函数设置为短期运行。如果您正在云功能中执行大量工作,则可能会在完成之前超时。我建议有几种解决方案: 1.更改您的云功能超时。在上面,检查顶部,以确定当前项目是否被选中,然后在中间,你会找到你的函数列表。点击你的功能。您现在应该了解函数详细信息。单击“编辑”。“保存”按钮正上方是“更多”。选择“更多”,您将看到一个增加超时的选项。这可以修改函数保持活动状态的时间 2.更改批大小,以便一次创建更少的用户 3.确保你的承诺如预期的那样有效。如果不将调用返回到
createUser
,则无法访问生成的UserRecord
Object.keys(newUsers).forEach((key) => {
console.log(newUsers[key]['name']);
return admin.auth().createUser({
uid: key,
email: newUsers[key]['email']
password: newUsers[key]['InitialPwd'],
disabled: false,
emailVerified: false,
displayName: newUsers[key]['name'],
}).then((userRecord) => {
return console.log('Success');
}).catch(function(error) {
console.log("Error:", error);
});
});
4.这一点我可能不正确,但用户似乎是一个接一个地创建的,而不是同时创建的。这可能是一个很好的案例,可以研究使用Promise.all,以便同时创建所有用户,而不是等待一个用户完成后再开始下一个用户。如果只创建一个用户,是否会出现此问题?您好,@Jen,它不会出现在一个或短列表中。在一些测试中,我发现当我有超过50个新用户时会发生这种情况。好的,这是很好的信息。你是在云函数中运行这个吗?是的@JenPerson。当用户上传CSV文件以导入新客户端时,此云功能启动。有必要创建一个具有“初始密码”的用户,不再有这样的事情
更改您的云功能超时@ggDeGreat是的,有。我刚查过。