我正在使用Firebase管理员创建新用户。该用户有电话号码。 当我填写这样的电话号码“ 7777777”时 我的Firebase管理员响应出现正确错误:
{
Error: The phone number must be a non-empty E.164 standard compliant identifier string.
at FirebaseAuthError.FirebaseError [as constructor]
...
...
errorInfo:
{ code: 'auth/invalid-phone-number',
message: 'The phone number must be a non-empty E.164 standard
compliant identifier string.'
},
codePrefix: 'auth' }
但是,如果我填写这样的数字“ +7777777” 我的Firebase管理员回复:
{ Error: An internal error has occurred. Raw server response:
"{"error":{"code":400,"message":"INVALID_PHONE_NUMBER : TOO_SHORT","errors":
[{"message":"INVALID_PHONE_NUMBER : TOO_SHORT","domain":"global","reason":"invalid"}]}}"
at FirebaseAuthError.FirebaseError [as constructor] ...
errorInfo:
{ code: 'auth/internal-error',
message: 'An internal error has occurred. Raw server response:
"{"error":{"code":400,"message":"INVALID_PHONE_NUMBER :
TOO_SHORT","errors":
[{"message":"INVALID_PHONE_NUMBER :
TOO_SHORT","domain":"global","reason":"invalid"}]}}"'
},
codePrefix: 'auth' }
为什么我有这个内部错误?以及如何避免呢?
更新: 我了解缺少国家/地区代码。问题是。为什么是内部错误?而不是“普通”错误?这2个错误之间有什么区别。
答案 0 :(得分:1)
当您将Moile No传递到Firebase时,您需要在移动电话号码之前添加国家/地区代码号码。
Ex:
如果您所在的国家/地区是美国(国家/地区代码:+1),而您的电话号码是222-333-4444,则您需要发送+12223334444
您还可以使用美国测试号码来测试Firebase移动身份验证
下面是美国的测试编号和短信代码 phoneNumber:“ + 16505554567” smsCode:“ 123456”
阅读完整的详细信息答案 1 :(得分:0)
我遇到了一些来自 Firebase 系统的奇怪错误。就我而言,我使用 Google 表格作为我们的数据存储。有人将电话号码从其他位置复制并粘贴到 Google 表格中。 Firebase 完全失败。
电话号码看起来正常,但我们认为可能存在一些奇怪的字符编码。当我们删除电话号码条目并手动输入号码时,一切正常。
我们的具体错误:
UnhandledPromiseRejectionWarning: Error: An internal error has occurred. Raw server response: "{"error":{"code":400,"message":"INVALID_PHONE_NUMBER : Invalid format.","errors":[{
"message":"INVALID_PHONE_NUMBER : Invalid format.","domain":"global","reason":"invalid"}]}}"