Estoy tratando de enviar un correo desde mi aplicación web2py alojada en GoogleAppEngine. Pero no está funcionando. Utilicé la función de correo que se proporcionó con web2py. ¿Alguien sabe cómo hacer esto? Leí en la documentación de GAE que la biblioteca de correo de Python no funcionaría con GAE y que se debe usar la biblioteca de correo GAE. ¿También se aplica al correo web2py? Gracias Enviando un correo electrónico desde un web2py en GAE
Respuesta
La clase web2py gluon.tools.Mail (que es utilizado por el módulo de autenticación también) funciona en GAE y no GAE fuera de la caja . Solo necesita pasar las configuraciones correctas:
mail=Mail()
mail.settings.server="smtp.example.com:25" or "gae"
mail.settings.sender="[email protected]"
mail.settings.tls=True or False
mail.settings.login="you:password"
Admite codificaciones múltiples, MIME y archivos adjuntos.
Recibo el siguiente error. fracaso Mail.send: 'módulo' objeto no tiene atributo 'getaddrinfo' y el código de la parte electrónico está mail = Correo() mail.settings.server = 'smtp.gmail.com:587' electrónico .settings.login = 'nombre de usuario: passwordxperia x1' mail.settings.sender = '' [email protected] mail.settings.tls = Verdadero o Falso mail.send (a, asunto, mensaje) Por encima de código funciona cuando uso desde mi máquina local, pero no una vez que lo cargo en GAE – felix
Me perdí algo en mi comentario anterior y lo corrigí. Es cierto que debe tener la API de GAE y es cierto que web2py proporciona una capa de abstracción.Pero no puede conectarse a un servidor externo porque smtplib requiere un socket y el socket no está disponible en GAE. En resumen, debe establecer mail.settings.server = "gae" – mdipierro
Debe utilizar el programa de correo nativa App Engine: http://code.google.com/appengine/docs/python/mail/sendingmail.html
La clase web2py gluon.tools.Mail
funciona en GAE. Ver fragmento de código gluon.tools
línea 310
try:
if self.settings.server == 'gae':
from google.appengine.api import mail
result = mail.send_mail(sender=self.settings.sender, to=to,
subject=subject, body=text)
Ésta es la configuración correcta para trabajar en GAE
mail=Mail()
mail.settings.server="gae"
mail.settings.sender="[email protected]" #This must be the email address of a registered
#administrator for the application, or the address
#of the current signed-in user.
mail.settings.login="you:password"
Ver http://code.google.com/intl/en/appengine/docs/python/mail/emailmessagefields.html emisor La dirección de correo electrónico del remitente, la dirección del remitente. Debe ser la dirección de correo electrónico de un administrador registrado para la aplicación o la dirección del usuario que inició sesión actualmente. Los administradores se pueden agregar a una aplicación usando la Consola de administración. La dirección de correo electrónico del usuario actual se puede determinar con la API de los usuarios.
¡Lo siento! Mi inglés es muy malo. Espero ayudar
Celso Godinho ([email protected]) Mundial de Brasil campeón del fútbol 2010
- 1. Enviando un correo electrónico HTML usando Swift
- 2. SMTP enviando un correo electrónico de prioridad
- 3. Enviando correo electrónico en C#
- 4. Enviando correo electrónico masivo solicitado
- 5. Enviando correo electrónico demorado de
- 6. enviando un correo electrónico desde un programa C/C++ en linux
- 7. enviando correo desde apache tomcat
- 8. Enviando correo electrónico usando email.mime.multipart en Python
- 9. GitLab ¿El correo electrónico no está enviando?
- 10. Enviando correo electrónico usando GMail en android
- 11. Enviando un correo electrónico cuando se lanza una excepción
- 12. enviando un archivo adjunto de correo electrónico usando TCPDF
- 13. Cómo verificar que realmente exista una dirección de correo electrónico enviando un correo electrónico a java
- 14. enviando un correo electrónico con varios archivos adjuntos
- 15. Enviando un correo electrónico a la cuenta de yahoo
- 16. Enviando un correo electrónico a través de VB6
- 17. Enviando correo electrónico HTML usando Python
- 18. enviando correo desde el archivo por lotes
- 19. Enviar correo electrónico desde un desencadenador
- 20. MS Access envía un correo electrónico (no desde Outlook o el correo electrónico del usuario)
- 21. Enviando un correo electrónico de manera que "desde" es un nombre o texto en lugar de la dirección de correo electrónico real
- 22. Enviando correo electrónico con formato HTML en Android
- 23. ¿Puedes vincular un archivo CSS desde un correo electrónico?
- 24. Enviando correo electrónico en Java utilizando Apache Commons email libs
- 25. Enviando correo electrónico en Android usando la API de JavaMail
- 26. enviar correo electrónico desde localhost
- 27. Enviar correo electrónico desde Cocoa
- 28. ¿Enviando un correo electrónico con un archivo adjunto a través de GMailSender?
- 29. Enviando correos electrónicos en asp.net con un nombre específico en lugar del correo electrónico del remitente
- 30. Restablecimiento de contraseña enviando contraseñas temporales por correo electrónico
Cuando dice que "no funciona" ¿qué quiere decir exactamente? ¿Te está dando algún mensaje de error? Esta página no parece segura de que el correo electrónico funcione con web2py + App Engine: http://wiki.web2py.com/Sending_Email_with_Plain_Text_HTML_Versions_plus_Attachments –
El correo electrónico no se está enviando, y aparece el siguiente error Recibo el siguiente error. Error de Mail.send: el objeto 'module' no tiene atributo 'getaddrinfo' – felix