Katalogeinträge entfernen

Um eine Ressource über die REST-API zu entfernen, können wir die HTTP-Operation DELETE nutzen. Das folgende Beispiel zeigt den (zweischrittigen) cURL Aufruf zum Entfernen eines Layers (Hinweis: Durch den Befehl wird der zuvor erzeugte Layer states_provinces aus dem Arbeitsbereich fossgis gelöscht!):

Zunächst entfernen wir den Layer:

curl \
  -v \
  -u admin:geoserver \
  -XDELETE \
  http://localhost:8082/geoserver/rest/layers/fossgis:states_provinces

Und anschließend den FeatureType des Datenspeichers:

curl \
  -v \
  -u admin:geoserver \
  -XDELETE \
  http://localhost:8082/geoserver/rest/workspaces/fossgis/datastores/natural_earth/featuretypes/states_provinces

In dem obigen Beispiel wird der FeatureType states_provinces durch den gleichnamigen Layer referenziert, wodurch die zweischrittige Lösung notwendig ist. Das alleinige Ausführen des zweiten Befehls würde in diesem Fall die Fehlermeldung feature type referenced by layer(s) provozieren. Um automatisch alle referenzierten Objekte (z.B. auch Gruppenlayer) zu entfernen, sollte der Parameter recurse=true gesetzt werden:

curl \
  -v \
  -u admin:geoserver \
  -XDELETE \
  http://localhost:8082/geoserver/rest/workspaces/fossgis/datastores/natural_earth/featuretypes/states_provinces?recurse=true

Wurden die Ressourcen erfolgreich entfernt, wird der Status HTTP/1.1 200 OK ausgegeben.

Möchten Sie sich - auf Grundlage der Beispiele dieses Workshops oder Ihrer eigenen Daten - weiter mit der REST-API beschäftigen, finden Sie in der offiziellen Dokumentation viele Hinweise und gute Beispiele:

https://docs.geoserver.org/stable/en/user/rest/

Sie haben das Modul REST-Schnittstelle erfolgreich beendet, Sie können nun mit Modul Tipps, Tricks & Troubleshooting fortfahren.