Wie kann ich Verbindungsfehler von WebSocket-API von API Gateway beheben?
Ich habe versucht, eine Verbindung zu meiner WebSocket-API von Amazon API Gateway herzustellen, aber ich habe Fehler erhalten. Wie behebe ich Probleme mit meiner WebSocket-API-Verbindung?
Kurzbeschreibung
Verbindungsfehler bei WebSocket-API von API Gateway können aufgrund folgender Ursachen auftreten:
- Unzureichende Berechtigungen, um die Anfrage an das Backend zu stellen
- Falsche Felder für die API-ID, AWS-Region und API-Phase
- Fehler bei der Backend-Integration
- Authentifizierungsfehler bei AWS Identity and Access Management (IAM)
Lösung
Folgen Sie diesen Schritten zur Fehlerbehebung für Ihren Fall.
Stellen Sie sicher, dass die WebSocket-API über die erforderlichen Berechtigungen verfügt, um eine Anfrage an das Backend zu stellen
API Gateway verwendet IAM-Rollen, Richtlinien, Tags und AWS-Lambda-Autorisierer, um den Zugriff auf eine WebSocket-API zu steuern. Weitere Informationen finden Sie unter Steuern und Verwalten des Zugriffs auf eine WebSocket-API in API Gateway.
Stellen Sie außerdem sicher, dass die WebSocket-API-Integrationsanfrage korrekt konfiguriert ist.
Vergewissern Sie sich, dass die Anfrage an die richtige API-ID, AWS-Region und API-Stufe gesendet wurde
Stellen Sie in diesem Beispiel für eine Anforderungs-URL sicher, dass die folgenden Felder korrekt sind:
wss://a1b2c3d4e5.execute-api.us-east-1.amazonaws.com/production
- Die WebSocket-API-ID „a1b2c3d4e5“.
- Die AWS-Region „us-east-1“.
- Der API-Phasenname „production“ ist vorhanden.
Überprüfen Sie die CloudWatch-Protokolle auf Fehler
Folgen Sie den Anweisungen, um Amazon CloudWatch Logs zur Fehlerbehebung bei WebSocket-APIs von API Gateway zu aktivieren. Wenn eine Lambda-Funktion für das Backend integriert ist, überprüfen Sie die CloudWatch-Protokolle auf Fehler. Weitere Informationen finden Sie unter Auf CloudWatch-Protokolle für AWS Lambda zugreifen.
Bestätigen Sie, dass die API-Anfrage signiert ist, wenn für die API-Methode die IAM-Authentifizierung aktiviert ist
Wenn die IAM-Authentifizierung aktiviert ist, stellen Sie sicher, dass die API-Anfrage mit Signature Version 4 (SigV4) signiert ist. Weitere Informationen finden Sie unter Signieren von AWS-Anforderungen mit Signature Version 4.
Gehen Sie wie folgt vor, um die IAM-Authentifizierung für Ihre API-Gateway-API zu aktivieren:
- Wählen Sie in der API-Gateway-Konsole den Namen Ihrer API aus.
- Wählen Sie im Bereich Ressourcen eine Methode (z. B. GET oder POST) aus, für die Sie die IAM-Authentifizierung aktivieren möchten.
- Wählen Sie im Bereich Methodenausführung die Option Methodenanforderung aus.
- Wählen Sie unter Einstellungen für Autorisierung das Stiftsymbol (Bearbeiten). Wählen Sie AWS_IAM aus der Dropdown-Liste, und wählen Sie dann das Häkchen-Symbol (Aktualisieren).
- (Optional) Wiederholen Sie die Schritte 2–4 für jede API-Methode, für die Sie die IAM-Authentifizierung aktivieren möchten.
- Stellen Sie Ihre WebSocket-API bereit, damit die Änderungen wirksam werden.
Ähnliche Informationen
Überwachung der WebSocket-API-Ausführung mit CloudWatch-Metriken
Relevanter Inhalt
- AWS OFFICIALAktualisiert vor einem Jahr
- AWS OFFICIALAktualisiert vor einem Jahr
- AWS OFFICIALAktualisiert vor einem Jahr
- AWS OFFICIALAktualisiert vor einem Jahr