云功能不运行 - React Native

问题描述 投票:0回答:1

我是React Native的新手,我对Cloud Functions有一个问题。

getAuthor(uid){
      var getUser = firebase.functions().httpsCallable('getUser');
      console.log('success');
      getUser({uid: uid}).then(function(result) {
        console.log('getUser called')
        var user = result.data.uid;
        return(
          result
          )

      })
      .catch(function(error) {
        var code = error.code;
        var message = error.message;
        var details = error.details;
      });
    }

当我运行这段代码时,打印了 "成功",但从未打印 "getUser called"。我认为这意味着getUser从未被调用。但我按照Firebase指南 "从应用程序中调用函数 "进行了操作,似乎也是如此。是Cloud Functions从未被初始化还是什么问题?在 Firebase 指南中,说要初始化 Cloud Functions 实例,需要在其中添加 var functions = firebase.functions();但当我把它添加到config.js时,我得到了一个错误,所以我跳过了这一步。对不起,如果这看起来很明显,我以前从未使用过React Native或Firebase。如果有任何帮助,我将非常感激

编辑:该功能已经部署完毕,可以从这个截图中看到。enter image description here

对了,就是这个函数。

exports.getUser = functions.https.onCall((data, context) => {
    const uid = data.uid;
        auth.getUser(uid)
        .then(function(UserRecord) {
            console.log('USER RECEIVED:' + UserRecord.email.toJSON());
            return {email : UserRecord.email.toJSON()};
          })
          .catch(function(error){
              console.log(error);
          });
javascript firebase react-native google-cloud-functions react-native-firebase
1个回答
0
投票

原来我不能用用户的UID访问用户信息! 解决办法是把它添加到Firebase数据库中。

© www.soinside.com 2019 - 2024. All rights reserved.