lima-city: Webhosting, Domains und Cloud
0 Pluspunkte 0 Minuspunkte

Ich möchte ein Script schreiben worin ich REST API Abfragen automatisieren kann. Dabei habe ich eine Basis URL und die wird dann jeweils mit einem Pfad aus einer Liste verknüpft. Wie kann ich das in Linux machen?

var basisurl = "https://server/api/";
var paths = ["definitions/network/network", "definitions/network/host"];

for(path in paths) {
    //call api
}
von  

2 Antworten

0 Pluspunkte 0 Minuspunkte

Hier ist ein Beispiel Script in Bash.

#!/bin/bash

BASISURL="https://server/api/"
PATHS=("definitions/network/network" "definitions/network/host")

for PATH in "${PATHS[@]}"; do
    FULL_URL="${BASISURL}${PATH}"
    echo "Rufe API auf: $FULL_URL"
done
von (495 Punkte)  
Dabei wird ein Fehler ausgegeben:

rest.script: 7: Syntax error: "(" unexpected
Du verwendest offenbar sh, ruf das Script mit

bash rest.script

auf.
Und wie geht das mit sh?
0 Pluspunkte 0 Minuspunkte

Hier ist ein Shell Script als Vorlage. Die Pfade (PATHS) sind durch Zeilenumbrüche getrennt.

#!/bin/sh
BASISURL="https://server/api/"
PATHS="definitions/network/network
definitions/network/host"

echo "$PATHS" | while read PATH; do

    URL="${BASISURL}${PATH}"
    echo "Found URL: $URL"

    RESPONSE=$(curl -s -X GET "$FULL_URL" -H "Accept: application/json")

    echo "Antwort von API:"
    echo "$RESPONSE"
    echo "------------------------"

done
von (629 Punkte)  
Diese Community basiert auf dem Prinzip der Selbstregulierung. Beiträge werden von Nutzern erstellt, bewertet und verbessert – ganz ohne zentrale Moderation.

Wer hilfreiche Fragen stellt oder gute Antworten gibt, sammelt Punkte. Mit steigender Punktzahl erhalten Mitglieder automatisch mehr Rechte, zum Beispiel

  • Kommentare verfassen
  • Fragen und Antworten bewerten
  • Themen von Fragen bearbeiten
  • Fragen, Antworten und Kommentare bearbeiten
  • Inhalte ausblenden

So entsteht eine Plattform, auf der sich Qualität durchsetzt – getragen von einer engagierten Gemeinschaft.

2.3k Fragen

2.8k Antworten

265 Kommentare

14 Nutzer