Как реализовать облачные функции на базе иона? - PullRequest
0 голосов
/ 09 октября 2018

Я хочу реализовать функцию с функциями firebase, но проблема в том, что на панели firebase никогда не отражается, что что-то делается.

это мой код функций, идея в том, чтобы получить все данныеиз конкретного документа с конкретным идентификатором.

exports.identifyusers=functions.https.onRequest((req, res) => {
    
    var db = admin.firestore();
    const key=req.query.key;
    
   return db.collection("usuariosdinny").doc(key).get().then(snapshot => {
   
    console.log("Correcto")

    }).catch(reason => {
        res.send(reason)
    })
});

это часть, когда я вызываю функцию: (эта часть является процессом аутентификации, который корректен, пользователь получает идентификатор и собирается отправить этот идентификатор функции)

this.afAuth.auth.signInWithEmailAndPassword(userst.email,userst.password)
        .then(res=> 
          {
            
          console.log(this.afAuth.auth.currentUser.uid);
          var tipo= firebase.functions().httpsCallable('identifyusers').arguments(this.afAuth.auth.currentUser.uid);
          console.log(tipo);

          if(tipo=="Cliente Dinny")
          {
            console.log("Es un cliente");
          }
          else{
            console.log("No tiene permiso para")
          }         
          }
        
          
          //this.navCtrl.push(TabsControllerPage)&& loader.dismiss())
        ).catch(reject =>alert.present() && loader.dismiss());
      }).catch(reject=>loader.dismiss());

спасибо за вашу помощь.

1 Ответ

0 голосов
/ 09 октября 2018

Ваш клиентский код пытается вызвать «вызываемую» функцию:

firebase.functions().httpsCallable('identifyusers')

Но ваша функция определена как функция типа HTTP:

exports.identifyusers=functions.https.onRequest(...)

Если вы хотите вызватьвызываемая функция, вам придется написать вызываемую функцию. Прочтите документацию для вызываемых функций , чтобы понять, как это сделать.

exports.identifyusers = functions.https.onCall(...)
...