Ziel des Blogs
Nachdem Sie diesen Blog gelesen haben, können Sie verstehen, wie SQS eingerichtet ist und wie MWS für Benachrichtigungen abonniert ist.
Lassen Sie uns einen Amazon SQS erstellen und diesen für das MWS-Abonnement aktivieren
Die Amazone
Erstellen Sie Amazon Simple Queue Service (Amazon
1. Anmeldunghttps://console.aws.amazon.com/sqs/home?region=us-west-2#?URL?and credentials. Page will look like below image.
- Standard-Sichtbarkeits-Timeout:Dies ist die Zeit, für die eine empfangene Nachricht aus der Warteschlange nicht erneut empfangen werden kann.
- Aufbewahrungszeitraum für Nachrichten: Dies ist die Zeit, für die sich eine Nachricht in der Warteschlange befindet, wenn diese Nachricht nicht zwangsweise gelöscht wird. Nach der eingegebenen Zeit wird diese Nachricht automatisch aus der Warteschlange gelöscht. Dies sind zwei der wichtigsten Bereiche. Andere Felder sind:
- Maximale Nachrichtengröße:
- Lieferungsverspätung:Die Zeit, die benötigt wird, um die erste Zustellung aller Nachrichten zu verzögern, die dieser Warteschlange hinzugefügt wurden.
- Wartezeit für Nachricht empfangen:Die höchste Zeitspanne, die ein Anruf mit langem Abrufempfang auf die Verfügbarkeit einer Nachricht wartet, bevor eine leere Antwort zurückgegeben wird.
Nachdem Sie die Details eingegeben haben, klicken Sie aufWarteschlange erstellen?button and you will be redirected on queue list page and your new queue will also be shown as shown in below image and basic detail of queue will also be displayed.
In basic detail, there is?URL?which is the most important attribute and this will be used to register and subscribe for notification.
Klicken Sie nun aufFügen Sie eine Berechtigung hinzu?button. A popup will be opened like below image. Enter your?AWS?account number and in action, check?Alles?Aktionen?checkbox and click on Add permissions.
Sie können beliebig viele Berechtigungen hinzufügen.
Ein Ziel registrieren (Erstellte Warteschlange)
Jetzt wurde eine Warteschlange erstellt und Sie müssen diese Warteschlange für Benachrichtigungen registrieren. Dazu müssen Sie die Operation RegisterDestination auf verwendenhttps://mws.amazonservices.co.uk/scratchpad/index.html?or?https://mws.amazonservices.com/scratchpad/index.html?depending on the marketplace. Select?subscriptions?from?API?Section and?RegisterDestination?from operation as below image.
Geben Sie hier SellerId, AWSAccessKeyId, Secret Key und MarketplaceI ein. Im Ziel,sqsQueueUrl?and in Destination.AttributeList.member.1.Value, you need to enter?SQS?URL Das war unter Details in
Wenn Sie die Anforderung senden, können Sie entweder eine Erfolgsantwort oder eine Fehlerantwort erhalten. Wenn Sie unter der Antwort erhalten, bedeutet dies, dass Sie erfolgreich registriert wurden.
<? xml version = "1.0"?> <RequestReportResponse xmlns = "https://mws.amazonservices.com/doc/2009-01-01/"> <RequestReportResult> <ReportRequestInfo> <ReportRequestId> 2291326454 </ ReportRequestId ReportType> _GET_MERCHANT_LISTINGS_DATA _ </ ReportType> <StartDate> false </ Scheduled> <SubmittedDate> 2009-01-21T02: 10: 39 + 00: 00 </ SubmittedDate> <ReportProcessingStatus> _SUBMITTED _ </ ReportProcessingStatus> </ ReportRequestInfo> < -2009d02-b13c-02c10c39e00a </ RequestId> </ ResponseMetadata> </ RequestReportResponse>
Wenn eine Anforderung nicht erfolgreich ist, lautet das Hauptantwortelement "ErrorResponse", unabhängig von der angeforderten Aktion, und es werden auch Fehlerdetails beantwortet.
<ErrorResponse xmlns = "https://mws.amazonservices.com/doc/2009-01-01/"> <Error> <Type> Sender </ Type> <Code> InvalidClientTokenId </ Code> <Message> Der AWS-Zugriff Die von Ihnen angegebene Schlüssel-ID ist in unseren Unterlagen nicht vorhanden. </ Message> <Detail> com.amazonservices.mws.model.Error$Detail@17b6643 </ Detail> </ Error> <RequestID>
Versuchen Sie nach dem Registrieren des Ziels die Operation SendTestNotificationToDestination, um zu überprüfen, ob Benachrichtigungen empfangen werden oder nicht. Dieser Vorgang sendet eine Testbenachrichtigung an das von Ihnen angegebene Ziel.
Abonnieren Sie die Benachrichtigung
Dazu müssen Sie den Vorgang "CreateSubscription" verwenden, und dieser Vorgang erstellt ein neues Abonnement für den angegebenen Benachrichtigungstyp und das angegebene Ziel. Wählen
Geben Sie hier SellerId, AWSAccessKeyId, Secret Key und MarketplaceId ein. Subscription.NotificationType sollte seinsqsQueueUrl?and in Subscription.Destination.AttributeList.member.1.Value, you need to enter?SQS?URL which was under details in?SQS?Queue. Subscription.IsEnabled will be true.
When submitting the request, either you will get success or error in response. Once you get success in response, all is done to get notifications.
After this, you can fetch notification from SQS using CURL request.