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

241
Visualizações
¿Cómo leer los parámetros POST en una aplicación sin servidor con Lambda?

Estoy enviando un formulario a una función Lambda implementada por serverless, aquí está el yml:

 functions: hello: handler: handler.hello events: - http: POST hello

Ahora mi función hola es:

 module.exports.hello = (event, context, callback) => { const response = { statusCode: 200, body: JSON.stringify({ message: 'Go Se222rverless v1.0! Your function executed successfully!', input: event, }), }; callback(null, response); };

Puedo ver en el resultado que se pasaron las variables, pero están almacenadas en la propiedad event.body como tales:

 "body":"email=test%40test.com&password=test12345"

Ahora puedo acceder a esta cadena, pero no puedo leer variables individuales de ella, a menos que haga alguna transformación de expresiones regulares que, creo, no sería el caso en una pila tan moderna como serverless/aws.

¿Qué me estoy perdiendo? ¿Cómo leo las variables individuales?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Parece que su terminal sin servidor está recibiendo datos con Content-Type: application/x-www-form-urlencoded . Puede actualizar la solicitud para usar datos JSON en su lugar para acceder a las variables de publicación de la misma manera que lo haría con otros objetos de JavaScript.

Asumiendo que esto no es una opción; aún puede acceder a los datos del cuerpo de su publicación utilizando el módulo de cadena de consulta del nodo para analizar el cuerpo de la solicitud, aquí hay un ejemplo:

 const querystring = require('querystring'); module.exports.hello = (event, context, callback) => { // Parse the post body const data = querystring.parse(event.body); // Access variables from body const email = data.email; ... }

Solo recuerde si algunos de los parámetros en el cuerpo de la publicación usan nombres que son identificadores de objetos de JavaScript no válidos para usar la notación de corchetes, por ejemplo:

 const rawMessage = data['raw-message'];
over 4 years ago · Santiago Trujillo Relatório

0

Puede usar un módulo de querystring de consulta Node para analizar el cuerpo POST.

over 4 years ago · Santiago Trujillo Relatório

0

La documentación del controlador para los diversos modelos de programación implica que el tipo de evento de API Gateway es un flujo de bajo nivel. Eso significa que debe usar otros métodos para extraer el contenido del cuerpo del POST.

Formato de entrada

 { "resource": "Resource path", "path": "Path parameter", "httpMethod": "Incoming request's method name" "headers": {Incoming request headers} "queryStringParameters": {query string parameters } "pathParameters": {path parameters} "stageVariables": {Applicable stage variables} "requestContext": {Request context, including authorizer-returned key-value pairs} "body": "A JSON string of the request payload." "isBase64Encoded": "A boolean flag to indicate if the applicable request payload is Base64-encode" }

Dotnet Solo el tipo System.IO.Stream se admite como parámetro de entrada de forma predeterminada.

Evento de Python: este parámetro suele ser del tipo dictado de Python. También puede ser de tipo list, str, int, float o NoneType.

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