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

716
Vistas
Error de capas de AWS lambda cuando la API de llamada "no puede encontrar el módulo"

Intento usar capas de AWS Lambda, vi un tutorial al respecto, pero aparece el error "no se puede encontrar el módulo..."

 service: aws-nodejs package: exclude: - .gitignore - package.json - .git/** provider: name: aws profile: sandbox runtime: nodejs12.x layers: testLayer: path: testLayer compatibleRuntimes: - nodejs12.x allowedAccounts: - '*' functions: hello: handler: handler.hello layers: - arn:aws:lambda:us-east-1:*:layer:testLayer:15 events: - http: path: test method: get cors: true

Cuando lo implemento, no tengo ningún error en mi terminal, y en AWS, veo mi capa y cuando la descargo, tengo mi package.json con dependencia de momento y la carpeta node_modules con momento

mi handler.js se ve así:

 'use strict'; module.exports.hello = async (event, context) => { const moment = require('moment') const a = moment('2016-01-01') return { statusCode: 200, body: JSON.stringify({ message: 'Hey' + a }), }; };

La estructura de mis archivos:

 testLayer/ node_modules/ moment/ package.json serverless.yml handler.js package.json

¿Tienes alguna idea de lo que estoy haciendo mal?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Sí, es posible que sus módulos de nodo estén allí en su capa lambda y, sin embargo, lambda arroje el error "no se puede encontrar el módulo".

Esto puede deberse a que el zip que ha creado no se corresponde con la estructura de directorios mencionada en la documentación de AWS.

Según la documentación oficial:

Inclusión de dependencias de biblioteca en una capa Puede mover las dependencias de tiempo de ejecución fuera de su código de función colocándolas en una capa. Los tiempos de ejecución de Lambda incluyen rutas en el directorio /opt para garantizar que su código de función tenga acceso a las bibliotecas que se incluyen en las capas.

Para incluir bibliotecas en una capa, colóquelas en una de las carpetas admitidas por su tiempo de ejecución.

Node.js: nodejs/node_modules, nodejs/node8/node_modules (RUTA_NODE)

Ejemplo de SDK de AWS X-Ray para Node.js

 nodejs/node_modules/aws-xray-sdk

Asegúrese de que su zip contenga la estructura de directorio correcta; de lo contrario, intente importar sus módulos desde /opt/your_node_module_directory

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