Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

1.2K
Views
ReferenceError: los encabezados no están definidos

Estoy construyendo una API usando express netlify-lambda y firebase, pero encontré este error. Cuando visito la URL para obtener los datos, aparece un error de referencia: los encabezados no están definidos. Así que descubrí que era un problema con firebase, pero no pude encontrar la información correcta que estaba buscando.

Así que esto es lo que estoy tratando de hacer, aquí están mis importaciones:

 const express = require('express'); const serverless = require('serverless-http'); const firebase = require("../resources/firebase"); // Import firebase config file const bodyParser = require('body-parser'); const {doc, getDoc } = require("firebase/firestore");

Aquí está la parte del enrutador:

 const app = express(); const router = express.Router(); router.get('/memes', async (req, res) => { const apiKey = req.query.key; const hashedApiKey = hashAPIKey(apiKey) // This is where i get the error const customerId = await getDoc(doc(firebase.db, "apiKeys", hashedApiKey)); const customer = await getDoc(doc(firebase.db, "customers", customerId.toString())); if (!customer.active) { res.sendStatus(403) } else { res.writeHead(200, {'Content-Type': 'text/html'}); res.write('<h1>Hello from Express.js!</h1>'); res.end(); } }); app.use(bodyParser.json()); app.use('/.netlify/functions/index', router); module.exports = app; module.exports.handler = serverless(app);

Después de ejecutar el comando para iniciar netlify-lambda "start": "netlify-lambda serve src" y luego visitar esta url http://localhost:9000/.netlify/functions/index/memes?key=bla aparecerá el error y netlify-lambda se apagará.

Supongo que necesito enviar encabezados con un token de Bearer a firebase antes de intentar obtener un documento. También podría estar completamente equivocado. De todos modos, si alguien sabe qué hacer, por favor dígame. Gracias por adelantado.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Para enviar encabezados con un token de portador a Firebase antes de intentar obtener un documento, se debe agregar el token de portador a Firebase a través del encabezado de autorización. El encabezado generalmente tiene el siguiente formato:

 Authorization: Bearer <token>

Esto está documentado en el Marco de autorización de OAuth 2.0: uso del token de portador, sección 2.1 . Por supuesto, su backend debe analizar el mismo formato.

Tenga en cuenta que el constructor de encabezados no está disponible en el entorno node.js. Deberá incluirlo desde el paquete node-fetch, al igual que fetch. Para obtenerlo de la función de búsqueda, puede usar una asignación de desestructuración.

 const fetch = require('node-fetch'); const { Headers } = fetch;

Para crear una nueva instancia, utilice la propiedad directamente.

 let headers = new fetch.Headers();

Para obtener más información, consulte la documentación de obtención de nodos .

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!