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

415
Views
Página web estática en el cubo s3 y haciendo una solicitud ajax dentro de la página para llamar a la función lambda

He subido una página html en el depósito s3 y esa página html hace una solicitud de publicación de ajax a la URL de la puerta de enlace api para enviar un correo electrónico.

El problema es que la misma URL de puerta de enlace api si uso cartero para hacer una solicitud de publicación, se envía el correo electrónico, pero con la página html en s3 que tiene código ajax no funciona.

Cualquier idea, o ayuda será útil para mí. Gracias ---- código Ajax

 $.ajax("https://apigateway-url/email_sending", { "type": "POST", "data": JSON.stringify(formData), "contentType": "application/json" }).done(function () { console.log("Done") }).fail(function () { console.log("Failed"); // console.log(data); });

He intentado mucha ayuda de la red, como editar la configuración de cors en s3 o habilitar cors en la puerta de enlace api, pero ninguna funcionó para mí.

Código de NodeJs para enviar correo electrónico

 var sendemail = require('./sendemail') app.post('/email_sending',function(req,res){ console.log("Request received For sending mail") sendemail.send(req.body,function(err, data){ // res.setHeader('Access-Control-Allow-Origin', '*'); res.end("Success"); }) })

El fragmento del módulo sendemail es:

 ses.sendemail(data, done)

Consideré este sitio web pero no obtuve la solución: https://codehabitude.com/2016/04/05/forms-to-emails-using-aws-lambda-api-gateway/

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Es muy probable que no esté configurando los encabezados CORS correctamente en apigateway. La documentación de apigateway http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html describe claramente el proceso.

Una vez que haya configurado CORS e implementado los cambios, puede verificar la solicitud de verificación previa de CORS con el siguiente comando curl

 curl -H "Origin: http://example.com" \ -H "Access-Control-Request-Method: POST" \ -H "Access-Control-Request-Headers: X-Requested-With" \ -X OPTIONS --verbose \ https://apigateway-url/email_sending

Además, tenga en cuenta que debe implementar los cambios después de configurar CORS (botón azul grande Implementar API: http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-deploy-api-with-console .html ) antes de que el cambio se refleje en su API

about 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!