【发布时间】:2020-04-18 23:30:43
【问题描述】:
我正在尝试使用 admin sdk 检查用户电话号码。当我在数据库中检查一个数字时,它会显示结果,但是当我输入一个不在数据库中的数字时,它会引发一个内部错误。
下面是函数 index.js 的示例代码
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
exports.checkPhoneNumber = functions.https.onCall(async (data, context) => {
const phoneNumber = await admin.auth().getUserByPhoneNumber(data.phoneNumber);
return phoneNumber;
})
前端.js
toPress = () => {
const getNumberInText = '+12321123232';
const checkPhone = Firebase.functions.httpsCallable('checkPhoneNumber');
checkPhone({ phoneNumber: getNumberInText }).then((result) => {
console.log(result);
}).catch((error) => {
console.log(error);
});
}
以下是我输入一个不在身份验证中的数字时遇到的错误
- node_modules\@firebase\functions\dist\index.cjs.js:59:32 in HttpsErrorImpl
- node_modules\@firebase\functions\dist\index.cjs.js:155:30 in _errorForResponse
- ... 14 more stack frames from framework internals
【问题讨论】:
-
你能分享你得到的错误吗?另外你为什么不做一个简单的查询来检查电话号码,如果你得到一个空的响应,这意味着这个号码不存在。这可能会为您省去麻烦。
-
我已经在上面的描述中添加了错误是什么意思做一个简单的查询来检查电话号码,如果你得到一个空的响应意味着这个号码不存在?
标签: node.js reactjs firebase react-native google-cloud-functions