Diese Dokumentation wurde automatisch von KI übersetzt.
API-Schlüssel in NocoBase verwenden
Diese Anleitung zeigt Ihnen anhand eines praktischen "To-Do"-Beispiels, wie Sie API-Schlüssel in NocoBase verwenden, um Daten abzurufen. Folgen Sie den Schritt-für-Schritt-Anweisungen, um den gesamten Workflow zu verstehen.

1 API-Schlüssel verstehen
Ein API-Schlüssel ist ein sicheres Token, das API-Anfragen von autorisierten Benutzern authentifiziert. Er dient als Anmeldeinformation, die die Identität des Anfragenden überprüft, wenn dieser über Webanwendungen, mobile Apps oder Backend-Skripte auf das NocoBase-System zugreift.
Das Format im HTTP-Anfrage-Header sieht so aus:
Das Präfix "Bearer" zeigt an, dass die folgende Zeichenfolge ein authentifizierter API-Schlüssel ist, der zur Überprüfung der Berechtigungen des Anfragenden verwendet wird.
Häufige Anwendungsfälle
API-Schlüssel werden typischerweise in den folgenden Szenarien verwendet:
- Zugriff von Client-Anwendungen: Webbrowser und mobile Apps verwenden API-Schlüssel, um die Benutzeridentität zu authentifizieren und sicherzustellen, dass nur autorisierte Benutzer auf Daten zugreifen können.
- Ausführung automatisierter Aufgaben: Hintergrundprozesse und geplante Aufgaben verwenden API-Schlüssel, um Aktualisierungen, Datensynchronisation und Protokollierungsoperationen sicher auszuführen.
- Entwicklung und Tests: Entwickler verwenden API-Schlüssel während des Debuggings und Testens, um authentifizierte Anfragen zu simulieren und API-Antworten zu überprüfen.
API-Schlüssel bieten mehrere Sicherheitsvorteile: Identitätsprüfung, Nutzungsüberwachung, Begrenzung der Anfragerate und Bedrohungsprävention, wodurch der stabile und sichere Betrieb von NocoBase gewährleistet wird.
2 API-Schlüssel in NocoBase erstellen
2.1 Plugin "Authentifizierung: API-Schlüssel" aktivieren
Stellen Sie sicher, dass das integrierte Authentifizierung: API-Schlüssel-Plugin aktiviert ist. Nach der Aktivierung erscheint eine neue Konfigurationsseite für API-Schlüssel in den Systemeinstellungen.

2.2 Eine Test-Sammlung erstellen
Erstellen Sie zu Demonstrationszwecken eine Sammlung namens todos mit den folgenden Feldern:
idTitel (title)Abgeschlossen (completed)

Fügen Sie der Sammlung einige Beispieldatensätze hinzu:
- Essen
- Schlafen
- Spiele spielen

2.3 Eine Rolle erstellen und zuweisen
API-Schlüssel sind an Benutzerrollen gebunden, und das System bestimmt die Anfragerechte basierend auf der zugewiesenen Rolle. Bevor Sie einen API-Schlüssel erstellen, müssen Sie eine Rolle erstellen und die entsprechenden Berechtigungen konfigurieren. Erstellen Sie eine Rolle namens "To-Do-API-Rolle" und gewähren Sie ihr vollen Zugriff auf die todos-Sammlung.

Falls die "To-Do-API-Rolle" beim Erstellen eines API-Schlüssels nicht verfügbar ist, stellen Sie sicher, dass dem aktuellen Benutzer diese Rolle zugewiesen wurde:

Nach der Rollenzuweisung aktualisieren Sie die Seite und navigieren Sie zur Verwaltungsseite für API-Schlüssel. Klicken Sie auf "API-Schlüssel hinzufügen", um zu überprüfen, ob die "To-Do-API-Rolle" in der Rollenauswahl erscheint.

Für eine bessere Zugriffskontrolle können Sie erwägen, ein dediziertes Benutzerkonto (z. B. "To-Do-API-Benutzer") speziell für die API-Schlüsselverwaltung und -tests zu erstellen. Weisen Sie diesem Benutzer die "To-Do-API-Rolle" zu.

2.4 API-Schlüssel generieren und speichern
Nach dem Absenden des Formulars zeigt das System eine Bestätigungsnachricht mit dem neu generierten API-Schlüssel an. Wichtig: Kopieren und speichern Sie diesen Schlüssel sofort sicher, da er aus Sicherheitsgründen nicht erneut angezeigt wird.

Beispiel-API-Schlüssel:
2.5 Wichtige Hinweise
- Die Gültigkeitsdauer des API-Schlüssels wird durch die bei der Erstellung konfigurierten Ablauf-Einstellungen bestimmt.
- Die Generierung und Überprüfung von API-Schlüsseln hängt von der Umgebungsvariable
APP_KEYab. Ändern Sie diese Variable nicht, da dies alle vorhandenen API-Schlüssel im System ungültig machen würde.
3 API-Schlüssel-Authentifizierung testen
3.1 Das API-Dokumentations-Plugin verwenden
Öffnen Sie das API-Dokumentations-Plugin, um die Anfragemethoden, URLs, Parameter und Header für jeden API-Endpunkt anzuzeigen.

3.2 Grundlegende CRUD-Operationen verstehen
NocoBase bietet Standard-CRUD-APIs (Create, Read, Update, Delete) für die Datenmanipulation:
-
Listenabfrage (list API):
-
Datensatz erstellen (create API):
-
Datensatz aktualisieren (update API):
-
Datensatz löschen (delete API):
Dabei gilt:
{baseURL}: Ihre NocoBase-System-URL{collectionName}: Der Name der Sammlung
Beispiel: Für eine lokale Instanz unter localhost:13000 mit einer Sammlung namens todos:
3.3 Testen mit Postman
Erstellen Sie in Postman eine GET-Anfrage mit folgender Konfiguration:
- URL: Der Anfrage-Endpunkt (z. B.
http://localhost:13000/api/todos:list) - Header: Fügen Sie den
Authorization-Header mit dem Wert hinzu:

Erfolgreiche Antwort:
Fehlerantwort (ungültiger/abgelaufener API-Schlüssel):
Fehlerbehebung: Wenn die Authentifizierung fehlschlägt, überprüfen Sie die Rollenberechtigungen, die API-Schlüsselbindung und das Token-Format.
3.4 Anfragecode exportieren
Postman ermöglicht den Export von Anfragen in verschiedenen Formaten. Beispiel eines cURL-Befehls:

4 API-Schlüssel in JS-Blöcken verwenden
NocoBase 2.0 unterstützt das direkte Schreiben von nativem JavaScript-Code auf Seiten mithilfe von JS-Blöcken. Dieses Beispiel zeigt, wie Sie API-Schlüssel verwenden, um externe API-Daten abzurufen.
Einen JS-Block erstellen
Fügen Sie auf Ihrer NocoBase-Seite einen JS-Block hinzu und verwenden Sie den folgenden Code, um To-Do-Daten abzurufen:
Wichtige Punkte
- ctx.requireAsync(): Lädt externe Bibliotheken (wie axios) dynamisch für HTTP-Anfragen
- ctx.message: Zeigt Benutzerbenachrichtigungen an (Laden, Erfolg, Fehlermeldungen)
- API-Schlüssel-Authentifizierung: Übergeben Sie den API-Schlüssel im
Authorization-Header mit demBearer-Präfix - Antwortverarbeitung: Verarbeiten Sie die zurückgegebenen Daten nach Bedarf (anzeigen, umwandeln usw.)
5 Zusammenfassung
Diese Anleitung hat den vollständigen Workflow zur Verwendung von API-Schlüsseln in NocoBase behandelt:
- Einrichtung: Aktivierung des API-Schlüssel-Plugins und Erstellung einer Test-Sammlung
- Konfiguration: Erstellung von Rollen mit den entsprechenden Berechtigungen und Generierung von API-Schlüsseln
- Testen: Validierung der API-Schlüssel-Authentifizierung mithilfe von Postman und dem API-Dokumentations-Plugin
- Integration: Verwendung von API-Schlüsseln in JS-Blöcken

Weitere Ressourcen:

