所以,我是 webapp 开发的新手,我目前正在构建一个简单的博客引擎,用于使用 python/flask 进行学习。
到目前为止,除了我想实现的新功能之外,我没有太多问题:通过电子邮件发布新条目。
为了实现这一点,我认为我需要有一个后台进程来检查多个电子邮件帐户中的新帖子。当找到新电子邮件时,该过程将创建新帖子以由前端显示。
我希望这是正确的,如果是这样,我可以着手实施吗?
可能是相关的,但我正在使用 sqlalchemy。
谢谢
所以,我是 webapp 开发的新手,我目前正在构建一个简单的博客引擎,用于使用 python/flask 进行学习。
到目前为止,除了我想实现的新功能之外,我没有太多问题:通过电子邮件发布新条目。
为了实现这一点,我认为我需要有一个后台进程来检查多个电子邮件帐户中的新帖子。当找到新电子邮件时,该过程将创建新帖子以由前端显示。
我希望这是正确的,如果是这样,我可以着手实施吗?
可能是相关的,但我正在使用 sqlalchemy。
谢谢
我会为此使用其中一个传入邮件 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()
请记住,如果您允许通过简单的电子邮件撰写帖子,您将不得不进行某种检查以确保您没有发布收到的每封垃圾邮件。