Cel bloga
Po przeczytaniu tego bloga będziesz w stanie zrozumieć, w jaki sposób SQS jest skonfigurowany i w jaki sposób MWS jest subskrybowany dla każdego powiadomienia.
Utwórzmy Amazon SQS i Włącz to dla subskrypcji MWS
Amazonka
Utwórz usługę Amazon Simple Queue (Amazon
1. Zaloguj Sięhttps://console.aws.amazon.com/sqs/home?region=us-west-2#?URL?and credentials. Page will look like below image.
Tutaj wejdźNazwa kolejki?which you want. Select queue type. By default,?Standardowa kolejka?will be selected. Now click on?Skonfiguruj kolejkę?and after click on this, you will get the options to configure queue like below image.
- Domyślny limit czasu widoczności:Jest to czas, w którym odebrana wiadomość z kolejki nie będzie dostępna do ponownego odbioru.
- Okres przechowywania wiadomości: Jest to czas, w którym każda wiadomość będzie znajdować się w kolejce, jeśli wiadomość ta nie zostanie wymazana na siłę. Po wprowadzonym czasie wiadomość zostanie automatycznie usunięta z kolejki. Są to dwie najważniejsze dziedziny. Inne pola to:
- Maksymalny rozmiar wiadomości:
- Opóźnienie dostawy:Czas opóźnienia pierwszego dostarczenia wszystkich wiadomości dodanych do tej kolejki.
- Odbierz czas oczekiwania na wiadomość:Najwyższy czas, przez jaki wywołanie długodystansowe będzie oczekiwać na wiadomość, zanim zostanie zwrócona pusta odpowiedź.
Po wprowadzeniu szczegółów kliknijUtwórz kolejkę?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.
Teraz kliknijDodaj pozwolenie?button. A popup will be opened like below image. Enter your?AWS?account number and in action, check?Wszystko?Akcje?checkbox and click on Add permissions.
Możesz dodać wiele uprawnień, jak chcesz.
Zarejestruj miejsce docelowe (utworzona kolejka)
Teraz utworzono kolejkę i musisz zarejestrować tę kolejkę dla powiadomień. W tym celu musisz użyć operacji RegisterDestinationhttps://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.
Tutaj wpisz: SellerId, AWSAccessKeyId, Secret Key i MarketplaceI. W miejscu docelowymsqsQueueUrl?and in Destination.AttributeList.member.1.Value, you need to enter?SQS?URL co było w szczegółach w
Przesyłając wniosek, możesz uzyskać odpowiedź na pytanie o sukces lub odpowiedź na błąd. Jeśli otrzymasz odpowiedź poniżej, oznacza to, że udało się zarejestrować.
<? 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> 2009-01-21T02: 10: 39 + 00: 00 </StartDate> <EndDate> 2009-02-13T02: 10: 39 + 00: 00: 2009: 02 + 20: 02 </EndDate> <Scheduled> false </Scheduled> <SubmittedDate> 10-39-00T00: 88: 76 + 600: 46 </SubmittedDate> <ReportProcessingStatus> _SUBMITTED_ </ReportProcessingStatus> </ReportRequestInfo> </RequestReportResult> <ResponseMetadata> <RequestId> 2faca53> -0d8-b4533c-43cXNUMXcXNUMXeXNUMXa </RequestId> </ResponseMetadata> </RequestReportResponse>
Jeśli żądanie nie powiedzie się, głównym elementem odpowiedzi będzie ErrorResponse, niezależnie od żądanego działania, aw odpowiedzi pojawią się również szczegóły błędu.
<ErrorResponse xmlns = "https://mws.amazonservices.com/doc/2009-01-01/"> <Error> <Type> Nadawca </Type> <Kod> InvalidClientTokenId </Code> <Message> Dostęp AWS Podany identyfikator klucza nie istnieje w naszych rejestrach. </Message> <Szczegóły> com.amazonservices.mws.model.Error$Detail@17b6643 </Detail> </Error> <RequestID> b7afc6c3-6f75-4707-bcf4-0475ad23162c </RequestID> </ErrorResponse>
Po zarejestrowaniu miejsca docelowego spróbuj wykonać operację SendTestNotificationToDestination, aby sprawdzić, czy powiadomienia są odbierane. Ta operacja wysyła powiadomienie testowe do określonego miejsca docelowego.
Subskrybuj powiadomienia
W tym celu należy użyć operacji CreateSubscription, a ta operacja utworzy nową subskrypcję dla określonego typu powiadomienia i miejsca docelowego. Wybierz
Wpisz tutaj SellerId, AWSAccessKeyId, Secret Key i MarketplaceId. Subscription.NotificationType powinien byćsqsQueueUrl?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.