我无法在Google应用引擎上发送电子邮件。
sender_address是应用程序的所有者。我想用“cron”每天向某人发送电子邮件。
这是我的python代码:
import requests
text = requests.get('http://www.py4inf.com/code/romeo.txt').text
这是我的cron.yaml代码:
class Send_Email(webapp2.RequestHandler):
def post(self):
self.abort(405, headers = [('Allow', 'GET')])
def get(self):
if 'X-AppEngine-Cron' not in self.request.headers:
self.error(403)
sender_address = "David <z25189347@gmail.com>"
user_email = "chaowc@mail.ncnu.edu.tw"
subject = "Work Complete!"
body = "Picture uploaded!"
mail.send_mail(sender_address, user_email, subject, body)
app = webapp2.WSGIApplication([(r'/', MainPage),
(r'/sendemail', Send_Email),
], debug=True)
这是我的app.yaml代码:
cron:
- description: Send Email
url: /sendemail
schedule: every day 00:00
timezone: Asia/Taipei
当我在localhost上运行我的应用程序时,总是显示:
handlers:
- url: /sendemail
script: main.app
- url: /.*
script: main.app
secure: always
但是,当我部署到Google应用引擎时,日志始终会显示错误消息:
Request to /sendemail succeeded!
我不知道我在哪里做错了。有人帮帮我!谢谢!
答案 0 :(得分:3)
您需要将发件人电子邮件地址添加到开发者控制台中的授权发件人列表&gt; App Engine&gt;设置&gt;应用程序设置。