所以,我是webapp开发的新手,我目前正在使用python / flask为学习目的构建一个简单的博客引擎。
到目前为止,我没有太多问题,除了我想要实现的新功能:通过电子邮件发布新条目。
为了实现这一点,我想我需要一个后台进程来检查多个电子邮件帐户的新帖子。当找到新的电子邮件时,该过程将会创建要由fornt-end显示的新帖子。
我希望这是正确的,如果是的话,我可以继续实施吗?
可能有用,但我正在使用sqlalchemy。
由于
答案 0 :(得分:2)
我会使用其中一个传入的邮件API,而不是试图破解一起。例如,Sendgrid API将接受一封电子邮件,然后将一些JSON发布到您的应用程序。
这个假的Post类:
class Post(db.Model):
text = TextProperty()
title = TextProperty()
你可以有这样的观点:
@app.route('/hook/new-email/', methods=['POST'])
def new_email():
envelope = json.loads(request.form.get('envelope'))
to_address = envelope['to'][0]
from_address = envelope['from']
text = request.form.get('text')
subject = request.form.get('subject')
if from_address == settings.ACCEPTED_AUTHOR:
post = Post(text=text, title=subject)
post.put()
请记住,如果您允许通过简单的电子邮件创作帖子,您将不得不进行某种检查,以确保您不会发布您收到的每封垃圾邮件。