Grundlegendes zur REST API
Die REST-API ist eine REST-Schnittstelle (Representational State Transfer), mit der Sie eine sichere Verbindung zu Geräten des Juniper Networks Betriebssystem Junos (Junos OS) herstellen, Remote-Prozeduraufrufe (rpc Befehle) ausführen, eine REST API Explorer-GUI verwenden können, mit der Sie bequem mit jeder der REST APIs experimentieren können, und eine Vielzahl von Formatierungs- und Anzeigeoptionen verwenden können. einschließlich JavaScript Object Notation (JSON).
Die REST-API kann auf Junos OS-Geräten mithilfe von Befehlen konfiguriert werden, die unter der [edit system services rest] Hierarchieebene verfügbar sind. Nach der rest Konfiguration steht die REST-API als Dienst zur Verfügung, eine REST-basierte Schnittstelle, mit der Sie Befehle von einem Remotestandort aus an das Gerät senden rpc können und die GET- und POST-Anforderungen unterstützt. Mit der REST API können Sie:
-
Verwenden Sie GET-Anforderungen, um Befehle zu übermitteln
rpc. -
Verwenden Sie POST-Anforderungen, um Informationen über
rpcBefehle zu übermitteln. -
Abrufen von Konfigurationsinformationen in XML, ASCII (Nur-Text) oder JSON.
-
Abrufen von Betriebsdaten in XML, ASCII oder JSON.
Auf der [edit system services rest] Hierarchieebene können Sie den REST-API-Service auf einem Junos OS-Gerät konfigurieren und sichern, IP-Adressen, Portnummern, Serverzertifikate, Steuerungsparameter und Trace-Optionen einrichten und ein REST-API-Explorer-Tool aktivieren, mit dem Sie die REST-APIs über eine praktische GUI ausprobieren können.
Die folgenden CLI-Anzeigeoptionen sind verfügbar:
-
Dem
display json| (Rohr) Befehl. Mit dem CLI-Befehlshow interfaces | display jsonwerden die Schnittstellen beispielsweise in JSON-Notation angezeigt. -
Den NETCONF-Serverbefehlen wird eine
format="json"Option hinzugefügt, mit der Betriebsinformationen in JSON-Notation zurückgegeben werden können.
Die Nutzlast der eingehenden REST API-Anforderung darf 1174 KB nicht überschreiten.
Problemumgehung: Teilen Sie die eingehenden REST API-Anforderungen in eine kleinere Größe auf.
Die REST-API unterstützt die HTTP-Standardauthentifizierung, und für alle Anforderungen ist ein Base64-codierter Benutzername und ein Kennwort erforderlich, die im Authorization-Header enthalten sind. Sowohl HTTP- als auch HTTPS-Unterstützung sind verfügbar:
-
Sie können HTTP verwenden, um Inhalte mit Klartext auszutauschen, wenn Sie keine sichere Verbindung benötigen.
-
Es wird empfohlen, HTTPS zu verwenden, um verschlüsselte Inhalte mit einer der verfügbaren Verschlüsselungssammlungen auszutauschen. Sie können die REST-API so konfigurieren, dass eine Serverauthentifizierung ohne Clientauthentifizierung erforderlich ist, oder Sie können die gegenseitige Authentifizierung konfigurieren.
Sobald die REST-API auf dem Gerät konfiguriert ist, stehen neue REST-Endpunkte zur Verfügung, mit denen entweder einzelne rpc Befehle über GET- oder POST-Anforderungen oder mehrere Befehle über eine einzelne POST-Anforderung ausgeführt rpc werden können. Weitere Informationen finden Sie unter Übermitteln einer GET-Anforderung an die REST-API und Übermitteln einer POST-Anforderung an die REST-API .
Junos OS unterstützt die Ausgabe von Betriebszustandsdaten im kompakten JSON-Format. Um die JSON-Daten in einem kompakten Format auszugeben, konfigurieren Sie die json compact Anweisung auf Hierarchieebene [edit system export-format state-data] . Andernfalls gibt das Gerät die JSON-Daten standardmäßig in einem nicht kompakten Format aus.
Die REST-API bietet auch eine grafische Benutzeroberfläche namens REST API-Explorer, mit der Sie sich einfach und schnell mit der Verwendung der REST-API vertraut machen können. Sie ist standardmäßig deaktiviert und kann durch Angabe von set system services rest enable-exploreraktiviert werden. Weitere Informationen zum REST API-Explorer finden Sie unter Beispiel: Verwenden des REST API-Explorers.
Tabellarischer Änderungsverlauf
Die Unterstützung der Funktion hängt von der Plattform und der Version ab, die Sie benutzen. Verwenden Sie Funktionen entdecken , um festzustellen, ob eine Funktion auf Ihrer Plattform unterstützt wird.
compact Anweisung auf Hierarchieebene
[edit system export-format state-data json] veraltet.