banner
Nachrichtenzentrum
Ein ISO-zertifiziertes Unternehmen zu sein ist ein Zeichen für Leistung.

So interagieren Sie mit Netzwerk-APIs mithilfe von cURL und Postman-Tools

May 17, 2023

Getty Images

APIs vereinfachen die Arbeitsweise von Netzwerkingenieuren in der Branche. Sie regieren die Hightech-Welt, von Smartphones und Smartwatches bis hin zur Internationalen Raumstation und Datenzentren auf der ganzen Welt.

Ingenieure, die zuvor mit APIs gearbeitet haben, werden wahrscheinlich nicht zu den traditionellen Tagen einer Befehlszeilenschnittstelle (CLI) und endlosen Syntaxen zurückkehren, die oft zu Fehlern führen, die zu Netzwerkausfällen und Umsatzverlusten für Unternehmen führen. APIs sind die neuen CLIs.

In meinem vorherigen Artikel über Anwendungsfälle für Netzwerk-APIs habe ich einen Überblick darüber gegeben, was APIs sind, welche Anwendungsfälle sie haben und warum Netzwerkingenieure sie in einer Welt einsetzen sollten, in der Agilität der Schlüssel zur Bereitstellung erstklassiger Dienste ist. In diesem Artikel wird untersucht, wie Netzwerkingenieure Tools wie cURL und Postman verwenden können, um mit Netzwerk-APIs zu interagieren.

Die meisten Netzwerkingenieure haben in verschiedenen Netzwerk- und Entwickler-Communities von cURL und Postman gehört. Postman ist eine GUI-basierte API-Testplattform mit mehr als 20 Millionen Benutzern weltweit. Es hilft Entwicklern, ihre APIs mit mehr Iterationen zu entwerfen, zu erstellen, zu testen und zu verbessern. Der Einsatz des Tools vereinfacht API-Workflows in Test- und Produktionsumgebungen.

Das Befehlszeilentool cURL wird zum Senden von Daten zum und vom Server verwendet. Das Tool ist aufgrund seiner umfangreichen Funktionen, wie z. B. der Multiprotokollunterstützung – insbesondere HTTP und HTTPS – weit verbreitet.

Um Postman und cURL verwenden zu können, müssen Netzwerkingenieure bestimmen, welches HTTP-Verb für die Interaktion mit Infrastrukturen verwendet werden soll. Eine Möglichkeit hierfür besteht darin, HTTP-Verben zu verknüpfen, um Lese-, Aktualisierungs- und Löschfunktionen (CRUD) zu erstellen, die von Datenbanken verwendet werden.

POST

ERSTELLEN

ERHALTEN

LESEN

SETZEN

AKTUALISIEREN

PATCH

AKTUALISIEREN

LÖSCHEN

LÖSCHEN

Im Netzwerkbereich ist Secure Shell (SSH) ein weit verbreitetes Protokoll für den sicheren Fernzugriff auf Netzwerkgeräte. Angesichts des zunehmenden Bedarfs an Automatisierung und der Verwendung von APIs für Netzwerkgeräte benötigen Netzwerkingenieure jedoch eine Schnittstelle, um auf programmierbare Weise mit den Geräte-APIs interagieren zu können.

HTTP- oder HTTPS-Protokolle können mithilfe von CLI- und GUI-Tools wie cURL bzw. Postman mit Netzwerkgeräte-APIs interagieren. Diese Interaktionen können Daten abrufen oder Daten manipulieren. Im Netzwerkbereich handelt es sich bei den Daten hauptsächlich um Gerätekonfigurationen. Diese Tools helfen Ingenieuren, Netzwerkgeräte in andere Netzwerkverwaltungssysteme zu integrieren, die Netzwerkeffizienz zu verbessern und Netzwerkprozesse zu automatisieren.

Lassen Sie uns einsteigen und über HTTPS mit cURL und Postman mit einer Geräte-API interagieren. Hinweis: Sie müssen die Geräte-API-Dokumentation anhand der für alle APIs gemeinsamen CRUD-Vorgänge klar verstehen.

Die folgenden Beispiele zeigen verschiedene Szenarien, in denen Netzwerktechniker cURL und die Postman-GUI in einer Sandbox- oder Produktionsumgebung verwenden können.

Die Aufgaben umfassen Folgendes:

Netzwerktechniker müssen sich immer bei Netzwerkgeräten wie Switches und Routern anmelden. Zu diesem Zweck können Ingenieure über eine Sandbox-CLI auf ein Remote-Netzwerk zugreifen und sich mit einer IP-Adresse anmelden. Im folgenden Beispiel melden wir uns über HTTPS mit dem folgenden Befehl bei einem Router mit der IP-Adresse 172.31.0.1 an:

Hier ignoriert „-k“ die Secure Sockets Layer-Zertifizierung und „-u“ wird eingefügt, um den Benutzernamen mit Passwort anzugeben.

Die Verwendung von cURL ist eine effektive Möglichkeit, aus der Ferne auf Netzwerkgeräte zuzugreifen, da es mehrere Protokolle unterstützt.

Der nächste Schritt besteht darin, Schnittstelleninformationen wie die primäre Adresse, Beschreibung und Weiterleitungsinformationen zu sammeln. Diese Informationen sind für Netzwerktechniker hilfreich, wenn sie Netzwerke analysieren und Fehler beheben.

Um eine Schnittstelle auf einem Cisco-Gerät zu überprüfen, verwenden Ingenieure normalerweise den folgenden Cisco IOS-Befehl:

Ingenieure können cURL verwenden, um dieselbe Aufgabe zu erledigen. Eine Möglichkeit besteht darin, die Schnittstelleninformationen in JSON abzurufen. Derzeit wird das JSON-Datenformat als Standard für den Datenaustausch verwendet und von vielen Programmiersprachen und Tools unterstützt. JSON ist sowohl für Menschen lesbar als auch maschinenlesbar. Daher benötigen Ingenieure möglicherweise Schnittstelleninformationen im JSON-Format, um sie in eine API zu integrieren oder in der Netzwerkautomatisierung zu verwenden.

Ingenieure können die Schnittstelleninformationen in JSON sammeln, indem sie mit dem folgenden Befehl einen JSON-Accept-Header hinzufügen, wie unten gezeigt:

Netzwerkingenieure sind bei ihren täglichen und monatlichen Aufgaben mit sich ändernden Anforderungen konfrontiert. In einigen Fällen müssen sie möglicherweise Routerkonfigurationen bearbeiten oder die IP-Adresse einer Schnittstelle ändern.

Dieses Beispiel zeigt, wie Ingenieure einen cURL-Befehl verwenden können, um eine IP-Adresse über die CLI zu ändern. Meistens verwenden Netzwerktechniker SSH, um aus der Ferne auf Geräte zuzugreifen. Aber neue Netzwerkstandards und -tools bieten Alternativen, wie zum Beispiel den folgenden cURL-Befehl:

Netzwerktechniker können die Postman-GUI als Schnittstelle zu einem der Cisco-Sandbox-Router verwenden. Im Vergleich zu cURL ist das Tool oft einfach zu verwenden.

Techniker müssen möglicherweise den Status einer Schnittstelle überprüfen, um Fehler zu beheben oder die Konfiguration eines Routers zu überprüfen. In diesem Fall können sie die Postman-GUI über das HTTPS-Protokoll nutzen.

Hier verwenden wir das GET-Verb, um Informationen abzurufen oder eine READ-Aktion auszuführen, indem wir den folgenden Befehl in der Postman-Anforderungsleiste verwenden:

GET – https://172.31.0.1/restconf/data/Cisco-IOS-XE-native:native/interface

Navigieren Sie in Postman durch die Registerkarten „Autorisierung“ und „Kopfzeilen“, um Parameter auszufüllen und sicherzustellen, dass die Informationen korrekt sind.

Netzwerktechniker können die POST-Methode verwenden, um die Schnittstelle zu manipulieren.

POST – https://172.31.0.1/restconf/data/Cisco-IOS-XE-native:native/interface

Im folgenden Beispiel demonstriere ich die Konfigurationsbearbeitungsfunktion über HTTPS, indem ich die IP-Adresse der Schnittstelle mithilfe der Postman-GUI ändere.

Netzwerkprofis können mit der PATCH-Methode über das HTTPS-Protokoll und Postman eine Änderung vornehmen oder eine Schnittstelle herunterfahren. Die Registerkarte „Body“ in Postman muss die zum Herunterfahren der Schnittstelle erforderliche Konfiguration im JSON-Format enthalten.

Netzwerktechniker können eine Schnittstelle für einen Router oder Switch deaktivieren, wenn das Team sie beispielsweise eine Zeit lang nicht verwenden muss. Das Herunterfahren einer Schnittstelle ist wie das Abschließen einer Tür für mehr Sicherheit.

Im folgenden Beispiel zeige ich, wie es möglich ist, Aufgaben in Postman auszuführen, die Ingenieure üblicherweise mit CLI ausführen. Ingenieure benötigen lediglich die Anmeldeinformationen für den Zugriff auf die Sandbox über HTTP, wie in der Postman-Anfrageleiste angezeigt.

Eine einzigartige Postman-Funktion ist die Möglichkeit, einen Python-Codeausschnitt abzurufen, um Funktionen aus dem Postman-Tool auszuführen. Da Python aufgrund seiner Benutzerfreundlichkeit, Flexibilität und umfangreichen Auswahl an Bibliotheken und Frameworks eine weit verbreitete Programmiersprache ist, benötigen Ingenieure häufig den Code, um die Netzwerkinfrastruktur zu verwalten und zu betreiben.

Ingenieure können den Python-Code von Postman beziehen, um den manuellen Aufwand zu verringern und die Flexibilität bei der Verwendung entsprechend den Projektanforderungen zu erhöhen.

Kein Werkzeug ist perfekt. Sowohl cURL als auch Postman haben ihre Vorteile und Herausforderungen bei der Verwendung von Netzwerk-APIs. cURL eignet sich beispielsweise gut für Anfänger, ermöglicht Benutzern jedoch nicht das Speichern von Anfragen. Mittlerweile unterstützt Postman jede Programmiersprache, verbraucht aber viel RAM.

Nachfolgend finden Sie eine Aufschlüsselung der Vor- und Nachteile von cURL und Postman.

In der Branche sind mehrere Tools verfügbar, die Netzwerkingenieuren und -entwicklern bei der Interaktion mit Netzwerk-APIs helfen. Auch wenn die Tools nicht perfekt sind, können Ingenieure eines auswählen, das ihren Anforderungen entspricht und ihnen hilft, ihre Arbeit schnell zu erledigen.