为了账号安全,请及时绑定邮箱和手机立即绑定

Firebase 函数,响应不是有效的 json 对象

Firebase 函数,响应不是有效的 json 对象

心有法竹 2023-04-20 10:50:53
我正在使用 android studio 开发一个基于角色的应用程序,因为我的项目需要管理员权限来创建用户和删除用户我为我的项目使用了 firebase admin sdk。我试图删除多个帐户,但我遇到了问题。响应返回无效的 json 对象。正如在我的代码中,我试图处理可能的错误。但是,响应仍然返回无效的 json 对象。 见下文索引.js    exports.deleteUser = functions.https.onCall(async (data,context) => {try {    if(!context.auth) {        throw new AuthenticationError('Kimlik Doğrulaması Yapılmamış');    }    const uids = JSON.parse(data);    console.log(uids);    const callerUid = context.auth.uid;    const callerUser = await admin.auth().getUser(callerUid);    if(!callerUser.customClaims.admin && !callerUser.customClaims.superadmin) {        throw new NotAnAdminError('Bu işlemi sadece yöneticiler gerçekleştirebilir');    }     const reference = admin.firestore().collection("Users");    const res = await admin.auth().deleteUsers(uids);    res.errors.forEach(element => console.log(element));    const successes = res.successCount;    const fails = res.failureCount;    console.log(fails);    console.log(successes);    if(fails===0) {        await uids.forEach(element => reference.doc(element).delete());        return {result:successes+' Öğrenci Silindi!'};    }else {        throw new functions.https.HttpsError('Silme Hatası','Bilinmeyen hata,         silinemeyen öğrenci sayısı: '+fails);    }}    catch(error) {        if(error.type === 'NotAnAdminError') {            throw new functions.https.HttpsError('Bu işlemi yapma yetkiniz              yok.',error.message);        }else if(error.type === 'AuthenticationError') {            throw new functions.https.HttpsError('Kimlik Hatası',error.message);        }else {            throw new functions.https.HttpsError('internal ERROR from catch             block',error.message);        }     }});
查看完整描述

1 回答

?
侃侃无极

TA贡献2051条经验 获得超10个赞

您的函数声明并导出为“deleteUser”,但您在 Android 客户端中将其调用为“deleteUsers”,这是不一样的。字符串需要匹配。



查看完整回答
反对 回复 2023-04-20
  • 1 回答
  • 0 关注
  • 79 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号