【问题标题】:App Engine Multiple Email Addresses Returns 404App Engine 多个电子邮件地址返回 404
【发布时间】:2012-07-26 13:35:39
【问题描述】:

我正在尝试处理发送到不同地址的入站电子邮件(在开发服务器上),例如:

- url: /_ah/jogo@.*rpg2e\.appspotmail\.com
script: jogo.py

- url: /_ah/contato@.*rpg2e\.appspotmail\.com
script: contato.py

- url: /.*
script: helloworld.py

但我收到以下日志消息:

INFO     2012-07-27 20:05:31,759 dev_appserver.py:2952] "POST /_ah/mail/jogo@rpg2e.appspotmail.com HTTP/1.1" 404 -

我也试过了:

- url: /_ah/jogo@rpg2e\.appspotmail\.com
script: jogo.py

- url: /_ah/contato@rpg2e\.appspotmail\.com
script: contato.py

- url: /.*
script: helloworld.py

无济于事。

如果我只是使用一个 handle_all 它就像一个魅力,但我希望我的脚本只处理发送到正确的 handle@rpg2e.appspotmail.com 的电子邮件

花了一些时间在 Web 和 Stack Overflow 中搜索后,我遇到了许多类似我的问题,唯一可行的解​​决方案是使用包罗万象的方法。其中一些甚至被 Ikai Lane[1] 以相同的结论回答——只捕获所有作品。

再一次,有没有人成功使用多个处理程序?

[1]https://groups.google.com/forum/?fromgroups#!topic/google-appengine-java/UGTkMV9foJ0

【问题讨论】:

    标签: python google-app-engine email handler


    【解决方案1】:

    来自Google App Engine Python - Receiving Mail

    url: /_ah/mail/owner@.*your_app_id\.appspotmail\.com 
      script: handle_owner.py 
      login: admin
    - url: /_ah/mail/support@.*your_app_id\.appspotmail\.com 
      script: handle_support.py 
      login: admin
    

    您缺少所需路径的/mail/ 部分。您发布到 /_ah/jogo@rpg2e.appspotmail.com 而不是 /_ah/mail/jogo@rpg2e.appspotmail.com。试试这个:

    - url: /_ah/mail/jogo@rpg2e\.appspotmail\.com
      script: jogo.py
    
    - url: /_ah/mail/contato@rpg2e\.appspotmail\.com
      script: contato.py
    

    最后,当我们遇到问题时,我们都会时不时地看到一些狭隘的观点,但值得注意的是错误消息的价值。错误消息告诉我们 App Engine 在发出 POST 请求时正在查找的位置,您可以将其与您的处理程序匹配:

    INFO   2012-07-27 20:05:31,759 dev_appserver.py:2952] "POST /_ah/mail/jogo@rpg2e.appspotmail.com HTTP/1.1" 404 
    

    【讨论】:

    • 非常感谢!看到解决方案如此简单明了,有点尴尬。我想我忽略了日志消息,但我确认您的修改有效。抱歉打扰,但我需要标记问题已解决吗?
    • 就像我说的,我们所有人都会时不时地获得隧道视野。我觉得不强调错误消息的重要性是不完整的,以防路人从中吸取教训。祝你的项目好运! :)
    猜你喜欢
    • 2011-03-21
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 2018-08-21
    • 1970-01-01
    • 2015-08-23
    • 1970-01-01
    相关资源
    最近更新 更多