【问题标题】:"POST /_ah/mail/.+" returning 404“POST /_ah/mail/.+”返回 404
【发布时间】:2016-04-07 07:15:50
【问题描述】:

我一直在阅读有关堆栈溢出的内容,但到目前为止,我还没有找到适合我的解决方案。我希望能够处理传入我的应用程序的电子邮件并最终处理附件,但我遇到了一个问题。

app.yaml

application: egg-api
runtime: python27
api_version: 1
threadsafe: yes

builtins:
- remote_api: on

# Activate email receiving

inbound_services:
- mail

# This handler tells app engine how to route requests to a WSGI     application.
- url: .*  # This regex directs all routes to main.app
  script: main.app
- url: /_ah/mail/info@egg-api.appspotmail.com # route everything to handle incoming
  script: handle_incoming_email.app
  login: admin
# Third party libraries
libraries:
- name: jinja2
  version: latest
- name: lxml
  version: latest
- name: webapp2
  version: latest
- name: MySQLdb
  version: latest

handle_incoming_email.py

import logging
import webapp2
from google.appengine.ext.webapp.mail_handlers import InboundMailHandler
from google.appengine.api import mail


class LogSenderHandler(InboundMailHandler):
    def receive(self, mail_message):
        logging.info("Received a message from: " + mail_message.sender)


app = webapp2.WSGIApplication([LogSenderHandler.mapping()], debug=True)

dev_appserver 启动成功后: 从http://localhost:8000/mail 我尝试发送电子邮件到 info@egg-api.appspotmail.com 但我得到:

INFO     2016-04-06 21:31:26,549 module.py:787] default: "POST /_ah/mail/info%40egg-api.appspotmail.com HTTP/1.1" 404 106

当我访问http://localhost:8080/_ah/login 时,我不知道我应该输入什么。

感谢您的帮助

【问题讨论】:

    标签: python email google-app-engine


    【解决方案1】:

    移动通用处理程序

    - url: .* 
    

    到特定的处理程序之后

    - url: /_ah/mail/info@egg-api.appspotmail.com
    

    即:

    - url: /_ah/mail/info@egg-api.appspotmail.com # route everything to handle incoming
      script: handle_incoming_email.app
      login: admin
    - url: .*  # This regex directs all routes to main.app
      script: main.app
    

    否则首先应用通用 URL 规则,导致 404。

    【讨论】:

    • 谢谢你,克里斯,就是这样!
    • regex 配置也可以使用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多