Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

125
Vistas
Las funciones de la nube compilan y pelusas, pero no se genera ninguna URL

Estoy experimentando con la implementación del contrato ethers.js dentro de una función de nube de firebase. Mis funciones compilan y compilan, pero cuando ejecuto firebase serve --only functions o firebase deploy --only functions , implementa uno de los contratos exportados en index.ts, ("helloWorld") pero no el otro ("greet "), que es lo que estoy tratando de probar.

No se generan errores en el paso de compilación, y cuando ejecuto Firebase Serve, obtengo una URL para helloWorld , pero nada (ni ningún mensaje de error) en 'saludar'.

Aquí está el contenido de index.ts:

 import {ethers, Wallet} from "ethers"; import * as functions from "firebase-functions"; import greetJson from "../contracts/greeter.json"; export const greet = functions.https.onRequest(async (request, response) => { const provider = new ethers.providers.JsonRpcProvider("http://localhost:8545"); const signer = new Wallet("*redacted*", provider); console.log("starting deploy"); const abi = greetJson.abi; const factory = new ethers.ContractFactory(abi, greetJson.bytecode, signer); const contract = await factory.deploy(["Ciao Bella"]); const greeter = await contract.deployed(); const greetresult = await greeter.greet(); response.send("Hello: " + greetresult); }); export const helloWorld = functions.https.onRequest((request, response) => { functions.logger.info("Hello logs!", {structuredData: true}); response.send("Hello from Firebase!"); });

aquí está la salida de la terminal:

My-MacBook-Pro:funciones jk$ npm compilación de script de ejecución

construir tsc

 My-MacBook-Pro:functions jk$ firebase serve --only functions ⚠ Your requested "node" version "16" doesn't match your global version "14". Using node@14 from host. i functions: Watching "/Users/jk/Documents/VSCodeProjects/BKC/bkc-cloud-blockchain/functions" for Cloud Functions... ✔ functions[us-central1-helloWorld]: http function initialized (http://localhost:5000/bkc-63bcf/us-central1/helloWorld).

Eso es todo. ¿Alguna idea de por qué se ignora la función de greet ?

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Hay una opción llamada Implementaciones parciales , para implementar funciones específicas de Firebase.

Por ejemplo:

$ firebase deploy --only functions:function1

Y para implementar más de una función a la vez, puede usar:

$ firebase deploy --only functions:function1,functions:function2

Entonces, para su caso, puede ejecutar el comando para implementar sus dos funciones:

$ firebase deploy --only functions:greet,functions:helloWorld

about 4 years ago · Juan Pablo Isaza Denunciar

0

Esto resultó ser un problema relacionado con la estructura del directorio y la clave de include en tsconfig.json.

Si coloca una clave de inclusión como "include": ["src", "contracts"] para poder importar archivos json en la carpeta de contratos, termina escribiendo en una carpeta lib que es un lugar inesperado y es ignorado Lo mejor es asegurarse de que si necesita una carpeta para contener archivos que deben incluirse en su compilación, simplemente colóquelos en src y no include una clave de inclusión en su tsconfig cuando ejecute firebase serve

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda