Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

434
Visualizações
Llamar a la función de Firebase desde la aplicación nativa de reacción: [Rechazo de promesa no manejado: Error: la respuesta no es un objeto JSON válido.]

Intento ejecutar una función de base de fuego desde una aplicación nativa de reacción.

En su forma más simple, solo debe tomar un valor y devolverlo nuevamente a la aplicación con el uid del usuario que inició sesión.

La función firebase se ve de la siguiente manera:

 const functions = require("firebase-functions"); const admin = require("firebase-admin"); admin.initializeApp(); exports.bfs = functions.region("europe-west1").https.onCall((data, context) => { const steps = data.steps; const uid = context.auth.uid; const obj = {steps:steps, uid:uid}; return JSON.stringify(obj); });

Por supuesto, se ha implementado con firebase deploy --only functions:bfs

En la App react-native se ejecuta lo siguiente:

 import "firebase/functions"; import firebase from "firebase"; firebase.initializeApp(firebaseConfig); var bfs = firebase.functions().httpsCallable("bfs"); bfs({ steps: 1 }).then((result) => console.log(result));

Pero no importa cómo devuelvo el valor en la función firebase (probé muchas cosas diferentes), siempre aparece el mismo mensaje de error:

 [Unhandled promise rejection: Error: Response is not valid JSON object.] at node_modules\qrcode\lib\core\segments.js:2:18 in <global> at node_modules\qrcode\lib\renderer\canvas.js:35:33 in render at node_modules\tslib\tslib.js:77:12 in <anonymous> at http://192.168.2.100:19000/node_modules%5Cexpo%5CAppEntry.bundle?platform=android&dev=true&hot=false&minify=false:160200:21 in <unknown> at http://192.168.2.100:19000/node_modules%5Cexpo%5CAppEntry.bundle?platform=android&dev=true&hot=false&minify=false:160154:31 in fulfilled at node_modules\react-native\node_modules\promise\setimmediate\core.js:37:13 in tryCallOne at node_modules\react-native\node_modules\promise\setimmediate\core.js:123:24 in setImmediate$argument_0 at node_modules\react-native\Libraries\Core\Timers\JSTimers.js:130:14 in _callTimer at node_modules\react-native\Libraries\Core\Timers\JSTimers.js:181:14 in _callImmediatesPass at node_modules\react-native\Libraries\Core\Timers\JSTimers.js:441:30 in callImmediates at node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:387:6 in __callImmediates at node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:135:6 in __guard$argument_0 at node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:364:10 in __guard at node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:134:4 in flushedQueue

Lo probé con return {steps:steps, uid:uid} o return '{"steps":${steps}, "uid":${uid}}' pero nada parece funcionar.

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda