Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Um E-Mail-Bouncebenachrichtigungen zu erhalten, müssen Sie Ihre Anwendung so konfigurieren, dass E-Mail-Benachrichtigungen aktiviert sind, und einen Handler erstellen, der diese Benachrichtigungen verarbeitet.
Anwendung zum Erhalten von Bouncebenachrichtigungen konfigurieren
Die Konfiguration besteht aus zwei Teilen. Als Erstes müssen Sie die Benachrichtigungen aktivieren. Als Zweites müssen Sie die Zuordnung zwischen /_ah/bounce und Ihrem Bounce-Handler einrichten, damit App Engine weiß, wo die Benachrichtigungsdaten GEPOSTET werden sollen. So konfigurieren Sie Ihre Anwendung für den Erhalt von E-Mail-Bouncebenachrichtigungen:
Fügen Sie der Datei app.yaml Folgendes hinzu, um Benachrichtigungen zu aktivieren:
inbound_services:-mail_bounce
Deklarieren Sie außerdem in app.yaml eine Zuordnung zwischen /_ah/bounce und dem Bouncebenachrichtigungs-Handler im Code. Beispiel:
Eine Bouncebenachrichtigung ist eine automatische Nachricht eines E-Mail-Systems über ein Problem bei der E-Mail-Zustellung. Damit diese Benachrichtigungen empfangen und verarbeitet werden können, müssen Sie in Ihrer Anwendung einen Bounce-Handler-Code erstellen.
Eine Möglichkeit, einen Bounce-Handler zu schreiben, bietet die Verwendung der Convenience-Klasse BounceNotificationHandler. Bei diesem Vorgehen müssen Sie dessen Methode receive() überschreiben, die mit einem Argument der Klasse BounceNotification aufgerufen wird. Unabhängig davon, ob Sie die Convenience-Klasse BounceNotificationHandler verwenden, benötigen Sie BounceNotification, um die Bouncebenachrichtigungen zu parsen.
Sowohl BounceNotificationHandler als auch BounceNotification befinden sich im Paket google.appengine.ext.webapp.mail_handlers.
Hier sehen Sie ein Beispiel für einen Bounce-Handler, der die Convenience-Klasse BounceNotificationHandler verwendet:
classLogBounceHandler(BounceNotificationHandler):defreceive(self,bounce_message):logging.info('Received bounce post ... [%s]',self.request)logging.info('Bounce original: %s',bounce_message.original)logging.info('Bounce notification: %s',bounce_message.notification)
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Schwer verständlich","hardToUnderstand","thumb-down"],["Informationen oder Beispielcode falsch","incorrectInformationOrSampleCode","thumb-down"],["Benötigte Informationen/Beispiele nicht gefunden","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-09-04 (UTC)."],[[["\u003cp\u003eThis content describes how to configure an app to receive email bounce notifications using legacy bundled services and APIs in the first-generation App Engine standard environment.\u003c/p\u003e\n"],["\u003cp\u003eTo receive bounce notifications, you must enable the \u003ccode\u003email_bounce\u003c/code\u003e inbound service in your \u003ccode\u003eapp.yaml\u003c/code\u003e file.\u003c/p\u003e\n"],["\u003cp\u003eYou must also define a mapping in your \u003ccode\u003eapp.yaml\u003c/code\u003e file between the \u003ccode\u003e/_ah/bounce\u003c/code\u003e URL and your bounce notification handler.\u003c/p\u003e\n"],["\u003cp\u003eA bounce handler is needed to process the bounce notifications, which can be done using the \u003ccode\u003eBounceNotificationHandler\u003c/code\u003e or directly with the \u003ccode\u003eBounceNotification\u003c/code\u003e class.\u003c/p\u003e\n"],["\u003cp\u003eBoth the \u003ccode\u003eBounceNotificationHandler\u003c/code\u003e and \u003ccode\u003eBounceNotification\u003c/code\u003e classes are located within the \u003ccode\u003egoogle.appengine.ext.webapp.mail_handlers\u003c/code\u003e package.\u003c/p\u003e\n"]]],[],null,["# Receiving Bounce Notification\n\nIn order to receive email bounce notifications, you need to configure\nyour app to enable email notification and you need to create a handler\nto handle those notifications.\n| This page describes how to use the legacy bundled services and APIs. This API can only run in first-generation runtimes in the App Engine standard environment. If you are updating to the App Engine Python 3 runtime, refer to the [migration guide](/appengine/migration-center/standard/migrate-to-second-gen/python-differences) to learn about your migration options for legacy bundled services.\n\nConfiguring Your App to Receive Bounce\nNotifications\n----------------------------------------------------\n\nThere are two parts to the configuration. First, you need to enable\nnotification. Second, you need to set the mapping between\n`/_ah/bounce` and your bounce handler, so App Engine knows where to\nPOST the notification data. To configure your app to receive bounced email\nnotifications:\n\n1. Add the following to your `app.yaml` file to enable notification: \n\n ```python\n inbound_services:\n - mail_bounce\n ```\n2. Also in `app.yaml`, declare a mapping between `/_ah/bounce` and the bounce notification handler in your code, for example: \n\n - url: /_ah/bounce\n script: handle_bounced_email.app\n login: admin\n\nHandling Bounce Notifications\n-----------------------------\n\nA [bounce notification](http://en.wikipedia.org/wiki/Bounce_message) is an\nautomated message from an email system that there's been a problem with message\ndelivery. In your app, you'll need to create bounce handler code to receive and\nprocess these notifications.\n\nOne way to write a bounce handler is to use the\n[BounceNotificationHandler](/appengine/docs/legacy/standard/python/refdocs/google.appengine.ext.webapp.mail_handlers#google.appengine.ext.webapp.mail_handlers.BounceNotificationHandler)\nconvenience class. If you go this route, you'll need to override its\n`receive()` method, which is called with an\nargument of the\n[BounceNotification](/appengine/docs/legacy/standard/python/refdocs/google.appengine.ext.webapp.mail_handlers#google.appengine.ext.webapp.mail_handlers.BounceNotification)\nclass. Whether you use the `BounceNotificationHandler` convenience class\nor not, you do need to use `BounceNotification` to parse the bounce\nnotifications.\n\nBoth `BounceNotificationHandler` and `BounceNotification`\nare in the `google.appengine.ext.webapp.mail_handlers` package.\n\nHere is a sample bounce handler that uses the\n`BounceNotificationHandler` convenience class: \n\n class LogBounceHandler(BounceNotificationHandler):\n def receive(self, bounce_message):\n logging.info('Received bounce post ... [%s]', self.request)\n logging.info('Bounce original: %s', bounce_message.original)\n logging.info('Bounce notification: %s', bounce_message.notification)"]]