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

448
Visualizações
Puerta de enlace API de AWS + Lamda (no asíncrona) + fetch (asincrónica)

Tengo una puerta de enlace api que necesito integrar con una lambda para mutar algunos datos de solicitud y luego pasarlos a otro servicio.

Tengo mi lambda configurada sincrónicamente (evento, contexto, devolución de llamada) y funciona bien para solicitudes sincrónicas. Sin embargo, cuando agrego una funcionalidad de "Proxy" a la lambda (realizo una solicitud a otro punto final, obtengo la respuesta y devuelvo dicha respuesta a la puerta de enlace api), parece que no puedo manejar la promesa correctamente.

Aquí hay un pseudocódigo de lo que tengo:

 const { fetch } = require('node-fetch'); const proxyMethod = (event, callback) => { const request = // valid fetch request fetch(request) .then(result => callback(null, result)) .catch(error => callback(Error(error)); } exports.handler = (event, context, callback) => { proxyMethod(event, callback); }

El problema es que no creo que esté manejando la promesa sincrónicamente, y usar async/await en "proxyMethod" básicamente no tiene efecto o la devolución de llamada no está esperando que se resuelva la promesa.

Esto es lo que obtengo en los registros de la puerta de enlace API:

 Sending request to https://lambda.us-east-1.amazonaws.com/2015-03-31/functions/arn:aws:lambda:us-east-1:########:function:#########/invocations Received response. Status: 200, Integration latency: 749 ms Endpoint response headers: {Date=Tue, 21 Jul 2020 02:11:31 GMT, Content-Type=application/json, Content-Length=4, Connection=keep-alive, x-amzn-RequestId=######, x-amzn-Remapped-Content-Length=0, X-Amz-Executed-Version=$LATEST, X-Amzn-Trace-Id=root=########;sampled=0} Endpoint response body before transformations: null Execution failed due to configuration error: Malformed Lambda proxy response Gateway response type: DEFAULT_5XX with status code: 502
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Encontré información útil aquí. En un montón de lugares diferentes, resulta que el tiempo de ejecución del nodo es compatible con el flujo asíncrono, por lo que necesitaba usar await para esperar la solicitud de recuperación y luego esperar nuevamente en "response.json ()" para obtener la respuesta del servicio río abajo.

https://stackoverflow.com/a/51471921/3571983

over 4 years ago · Santiago Trujillo Relatório
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