Durch die Nutzung von AWS re:Post stimmt du den AWS re:Post Nutzungsbedingungen

Wie behebe ich den Fehler mit ungültigen Parametern, den ich in Amazon SNS als Antwort auf API-Aufrufe erhalte?

Lesedauer: 5 Minute
0

Ich erhalte eine Fehlermeldung über einen ungültigen Parameter in Amazon Simple Notification Service (Amazon SNS), wenn ich API-Aufrufe tätige.

Lösung

Fehler bei Plattform-Anmeldeinformationen

„InvalidParameter - Error message: Invalid parameter: Attributes Reason: Platform credentials are invalid“

Voraussetzung: Überprüfe den Anbieterzertifikatstyp in deinem Apple Developer-Konto und lade das Zertifikat herunter.

Gehe wie folgt vor, um einen Fehler bei den Anmeldeinformationen für die Plattform zu beheben:

  1. Öffne die Amazon-SNS-Konsole.
  2. Wähle im Navigationsbereich Push-Benachrichtigungen aus.
  3. Wähle Plattformanwendung erstellen aus.
  4. Gib unter Anwendungsname einen Namen für deine Anwendung ein.
  5. Wähle für Push-Benachrichtigungsplattform Apple iOS/VoIP/Mac aus.
  6. Wähle nur für den Sandbox-Zertifikattyp im Abschnitt Apple-Anmeldeinformationen die Option Wird für die Entwicklung in der Sandbox verwendet aus.
    Wichtig: Wenn du den Zertifikattyp Sandbox & Production verwendest, wähle nicht Wird für die Entwicklung in der Sandbox verwendet aus. Andernfalls erhältst du eine Fehlermeldung.
  7. Wähle als Push-Zertifikattyp deinen Zertifikatstyp aus.
  8. Wähle Datei auswählen und dann das Zertifikat aus, aus dem du die Anmeldeinformationen laden möchtest.
  9. Wähle Plattformanwendung erstellen aus.

FIFO-Fehler

„message: Invalid parameter: The MessageGroupId parameter is required for FIFO topics“

Möglicherweise wird der vorherige Fehler auch dann angezeigt, wenn du die MessageID angibst. Stelle sicher, dass du das AWS SDK für JavaScript im Browser oder das AWS SDK für JavaScript in Node.js Version 2.777.0 oder höher verwendest.

Möglicherweise erhältst du Amazon SNS-FIFO-Fehler für eine ungültige MessageGroupId oder MessageDeduplicationId, obwohl du die IDs in der API-Anforderung angegeben hast. Amazon SNS-FIFO-Attribute sind nur für neuere SDK-Versionen verfügbar. Weitere Informationen findest du unter Changelog for AWS SDK for JavaScript (Changelog für AWS SDK für JavaScript) auf der GitHub-Website.

Fehler bei Textnachrichten (SMS) beheben

„Couldn't set text messaging attributes. Error code: InvalidParameter - Error message: Invalid parameter:“

Gehe wie folgt vor, um den SMS-Fehler zu beheben:

  1. Öffne die Amazon-SNS-Konsole.
  2. Wähle im Navigationsbereich Textnachricht (SMS) aus.
  3. Wähle unter SMS-Einstellungen die Option Bearbeiten.
  4. Gib für Ausgabenlimit für Konto – Optionaler Parameter den numerischen Wert 1 ein.
    Hinweis: Standardmäßig hat jedes Amazon SNS-Konto ein monatliches Ausgabenkontingent von 1 USD in jeder AWS-Region. Wenn du den Standardwert überschreitest, erhältst du eine Fehlermeldung. Um das monatliche Ausgabenkontingent für das Konto zu erhöhen, fordere eine Erhöhung des Kontoausgabenkontingents an.
  5. Wähle Änderungen speichern aus.

Wenn für das Zielland ein dedizierter langer Code, ein kurzer Code oder eine SenderID erforderlich ist, verwende den Code nach der Registrierung. Weitere Informationen findest du unter Unterstützte Länder und Regionen für SMS-Nachrichten mit AWS End User Messaging SMS.

Hinweis: Eine registrierte Ursprungsidentität oder Absender-ID ist landesspezifisch. Um eine Urpsrungsnummer oder SenderID für andere Länder zu verwenden, musst du die Urpsrungsnummer oder SenderID für jedes weitere Zielland separat registrieren. Weitere Informationen findest du unter Telefonnummer oder Absender-ID für AWS End User Messaging SMS auswählen.

Fehler beim Löschen von Abonnements beheben

„Couldn't delete subscription.Error code: InvalidParameter - Error message: Invalid parameter: SubscriptionArn Reason: An ARN must have at least 6 elements, not 1“

Status PendingConfirmation

Möglicherweise erhältst du eine Fehlermeldung, wenn du versuchst, ein Abonnement zu entfernen, das sich im Status PendingConfirmation befindet. Wenn du die Unsubscribe-API (Abbestell-API) verwendest, um ein Abonnement zu löschen, erfordert der API-Aufruf den SubscriptionARN. Wenn du die Amazon SNS-Konsole verwendest, um das Abonnement zu löschen, wählt Amazon SNS automatisch den SubscriptionARN.

Bei einem Abonnement, das den Status PendingSubscription hat, zeigt die Konsole keine SubscriptionID an. Daher verwendet die Konsole die PendingConfirmation als SubscriptionId. Dann schlägt der API-Aufruf fehl und gibt einen Fehler zurück.

Gehe wie folgt vor, um ein Abonnement mit dem Status Ausstehende Bestätigung zu lösen:

  1. Öffne die Amazon-SNS-Konsole.

  2. Wähle im Navigationsbereich Themen und dann dein Thema aus.

  3. Wähle das Thema mit dem Abonnement mit dem Status Ausstehende Bestätigung und das Abonnement mit dem Status Ausstehende Bestätigung aus.

  4. Wähle Bestätigung anfordern aus. Eine Abonnementbenachrichtigung wird an den Endpunkt gesendet, um das Abonnement zu bestätigen. Die Benachrichtigung enthält einen Link, der dem folgenden Beispiel ähnelt:

    https://sns.us-east-1.amazonaws.com/confirmation.html?TopicArn=arn:aws:sns:your-aws-region:your-account-number:your-topic-name&Token=your-token&Endpoint=your-endpoint
  5. Wähle im Navigationsbereich Abonnements und dann dein Abonnement aus.

  6. Wähle Abonnement bestätigen aus.

  7. Gib die Abonnement-URL aus der Abonnement-Benachrichtigung in das Dialogfeld ein und wähle dann Abonnement bestätigen.

  8. Wähle dein Abonnement aus und wähle dann Löschen.

Oder warte standardmäßig 3 Tage, bis Amazon SNS das Abonnement entfernt hat, das den Status PendingConfirmation hat.

Status gelöscht

Möglicherweise erhältst du eine Fehlermeldung für ein Abonnement mit dem Status Gelöscht.

Überprüfe den Endpunkt, an dem du den Link zum Abbestellen ausgewählt hast. Nachdem du das Abonnement abbestellt hast, erhält der Endpunkt eine weitere Benachrichtigung, die der folgenden ähnelt:

„Your subscription to the topic below has been deactivated:arn:aws:sns:Your-AWS-Region:Your-Account-Number:Your-Topic-Name
If this was in error or you wish to resubscribe, click or visit the link below:
Resubscribe
Please click on the resubscribe link present in the notification. This will confirm the subscription. On success, please select the specific subscription and click on Delete button.“

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 25 Tagen