Я пытаюсь создать нового пользователя в Firebase, используя функцию вызываемого облака. Всякий раз, когда возникает ошибка (например, адрес электронной почты недействителен), функция всегда возвращает ту же самую ошибку crypti c моему приложению Firebase независимо от того, что я делаю:
{"error":{"status":"INTERNAL","message":"INTERNAL"}}
В консоли Firebase я также получаю это:
Unhandled error Error: Unknown error status: auth/invalid-email
Что не имеет особого смысла, так как я на самом деле обрабатываю ошибку. Это код облачной функции:
exports.createUser = (data, context) => {
return admin.auth().createUser({
email: data.email,
password: data.password
}).catch((error) => {
throw new functions.https.HttpsError(error.errorInfo.code, error.errorInfo.message);
});
}
Как показано, я пытался использовать throw functions.https.HttpsError
, что в документации предлагает .
I ' Мы также пытались return functions.https.HttpsError
или даже выдавали свою ошибку с тем же результатом.
Я использовал try / catch с await
вместо использования then()
и catch()
. Тот же результат. Консоль функций все еще информирует меня, что ошибка не обрабатывается, что абсурдно.
Так как я могу выдать правильную ошибку своим пользователям при использовании функции вызываемого облака?