GetCapabilities - web_services - 23 - 23.1

Spectrum-Webdienste-Handbuch

Product type
Software
Portfolio
Integrate
Product family
Spectrum™ software
Product
Spectrum™ software > Web Services
Version
23.1
ft:locale
de-DE
Product name
Spectrum Technology Platform
ft:title
Spectrum-Webdienste-Handbuch
First publish date
2007
ft:lastEdition
2023-10-25
ft:lastPublication
2023-10-25T07:20:03.279000

Beschreibung

Der Dienst „GetCapabilities“ ermöglicht es dem Benutzer, die Metadaten über die verwendete Routing-Engine abzurufen. Der Benutzer kann die Metadaten nutzen, um einen Dienst und seine Funktionen zu entdecken und so die Verwendung dieser Routing-Dienste optimieren.

Dieser Dienst ist nur als REST-Dienst verfügbar.

URL-Format von HTTP-GET-Anforderungen

Für HTTP-GET-Anforderungen wird das folgende Format verwendet.

http://<server>:<port>/rest/Spatial/erm/v1/capabilities.json

Abfrageparameter

Die Tabelle beschreibt die Abfrageparameter für „GetCapabilities“.

Parameter Erforderlich Beschreibung
acceptVersions Optional Gibt einen Platzhalter an (nicht funktionsfähig).
sections Optional

Wird dieser Parameter ausgelassen, werden Informationen über alle Abschnitte zurückgegeben.

Gibt eine durch Komma getrennte, unsortierte Liste von null oder mehr Abschnittsnamen, die im Dienstmetadatendokument zurückgegeben werden. Bei Abschnittswerten muss die Groß-/Kleinschreibung beachtet werden. Akzeptierte Abschnittswerte sind:
  • ServiceIdentification
  • ServiceProvider
  • operationsMetadata
  • databases

Antwort

Die Antwort entspricht „OGC GetCapabilities“. Sie ist im JSON-Format angegeben und hat diese Abschnitte:

  • serviceIdentification
  • serviceProvider
  • operationsMetadata
  • databases

serviceIdentification

Dieser Abschnitt enthält grundlegenden Metadaten über diesen bestimmten Server. Der Inhalt sieht wie folgt aus:

  "serviceIdentification":       {           "title": "PBS Routing Service",           "abstract": "Routing service maintained by PBS",           "keywords":           {               "keyword":               [               ]           },           "serviceType": "Routing",           "serviceTypeVersion": "v1",           "fees": "none",           "accessConstraints": "none"       }

Diese Informationen sind identisch mit den in der Konfigurationsdatei „getCapabilities.json“ verfügbaren Informationen.

Diese Datei ist verfügbar unter SpectrumDirectory\server\modules\routing. Der Serverneustart ist erforderlich, damit alle Änderungen wirksam werden. Der Administrator kann in den entsprechenden Einträgen der JSON-Datei zulassen, welche Informationen der Benutzer anzeigen, ändern oder löschen darf. Alle Felder in der JSON-Datei sind optional.

serviceProvider

Dieser Abschnitt enthält Metadaten über die Organisation, die diesen Server betreibt. Der Inhalt sieht wie folgt aus:

"serviceProvider":       {           "providerName": "Routing Service Provider",           "providerSite":           {               "href": "http://www.yourcompany.com/",               "type": "simple"           },           "serviceContact":           {               "contactInfo":               {                   "address":                   {                       "administrativeArea": "Province",                       "city": "City",                       "country": "Country",                       "deliveryPoint": "Mail Delivery Location",                 "electronicMailaddress":"mailto://support@yourcompany.com",                       "postalCode": "PostCode"                   },                   "contactInstructions": "Contact Instructions",                   "hoursOfservice": "24 Hours",                   "phone":                   {                       "facsimile": "1.800.000.0000",                       "voice": "1.800.000.0000"                   }               },               "individualName": "Contact Person",               "positionName": "Contact Person's Title",               "role": "Contact Person's Role"           }       }

Dieser wird auch mithilfe der oben beschriebenen Konfigurationsdatei getCapabilities.json konfiguriert.

operationsMetadata

Dieser Abschnitt enthält Metadaten über die von diesem Server implementierten Optionen, einschließlich die URLs für Vorgangsanforderungen. Diese feststehenden Vorgänge oder Dienste sind in diesem Abschnitt aufgeführt:

  • GetRoute: Point-to-Point-Dienst
  • GetRouteCostMatrix: Matrix des Punktverarbeitungsdienstes
  • GetTravelBoundary: generiert eine Fahrt- bzw. Gehzeit oder einen Entfernungsrahmen.
  • DescribeDatasets: enthält Informationen über die konfigurierten Datasets
  • DescribeDatabases: enthält Informationen über alle konfigurierten Datenbanken.
  • GetSegmentDataForPoint: gibt die Segmentinformationen für einen Punkt zurück.
  • GetSegmentDataForSegment: gibt Segmentinformationen für eine Segment-ID zurück.
  • ListPersistentUpdates: listet alle Persistent Updates auf, die auf dem Server vorhanden sind.
  • DeletePersistentUpdates: löscht alle Persistent Updates, die auf dem Server vorhanden sind.
  • SetPersistentUpdatesAtPoint: speichert das Persistent Update für den angegebenen Punkt auf dem Server.
  • SetPersistentUpdatesForSegment: speichert das Persistent Update für die angegebene Segment-ID auf dem Server.
  • SetPersistentUpdatesForRoadType: speichert das Persistent Update für den angegebenen Straßentyp auf dem Server.

Der Inhalt sieht wie folgt aus:

{"operationsMetadata": [{ 		"name": "GetRoute", 		"DCP": { 			"HTTP": { 				"GET": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>.json?q=route&version=2", 				"POST": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>.json?q=route&version=2" 			} 		}, 		"parameter": { 			"name": "OutputFormat", 			"value": "text/json" 		} 	},  	 	{ 		"name": "GetRouteCostMatrix", 		"DCP": { 			"HTTP": { 				"GET": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>.json?q=routeCostMatrix&version=2", 				"POST": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>.json?q=routeCostMatrix&version=2" 			} 		},"parameter": { 			"name": "OutputFormat", 			"value": "text/json"} 			 	}, 				 	{ 			 		"name": "GetTravelBoundary", 		"DCP": { 			"HTTP": { 				"GET": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>.json?q=travelBoundary&version=2", 				"POST": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>.json?q=travelBoundary&version=2" 			} 		}, 		"parameter": { 			"name": "OutputFormat", 			"value": "text/json" 		} 	},  	 	{ 		"name": "DescribeDatasets", 		"DCP": { 			"HTTP": { 				"GET": "<schema>://<server>:<port>/rest/Spatial/erm/v1/datasets.json" 			} 		}, 		"parameter": { 			"name": "OutputFormat", 			"value": "text/json" 		} 	},  	 	{ 		"name": "DescribeDatabases", 		"DCP": { 			"HTTP": { 				"GET": "<schema>://<server>:<port>/rest/Spatial/erm/v1/databases.json" 			} 		}, 		"parameter": { 			"name": "OutputFormat", 			"value": "text/json" 		} 	}, 	 	{ 		"name": "GetSegmentDataForPoint", 		"DCP": { 			"HTTP": { 				"GET": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>/segments.json" 				 			} 		}, 		"parameter": { 			"name": "OutputFormat", 			"value": "text/json" 		} 	}, 	 	{ 		"name": "GetSegmentDataForSegment", 		"DCP": { 			"HTTP": { 				"GET": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>/segments/<segmentID>.json" 			} 		}, 		"parameter": { 			"name": "OutputFormat", 			"value": "text/json" 		} 	}, 	 	{ 		"name": "ListPersistentUpdates", 		"DCP": { 			"HTTP": { 				"GET": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>/persistentUpdates.json" 			} 		}, 		"parameter": { 			"name": "OutputFormat", 			"value": "text/json" 		} 	}, 	 	{ 		"name": "DeletePersistentUpdates", 		"DCP": { 			"HTTP": { 				"DELETE": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>/persistentUpdates" 			} 		}, 		"parameter": { 			"name": "OutputFormat", 			"value": "text/json" 		} 	}, 	 	{ 		"name": "SetPersistentUpdatesAtPoint", 		"DCP": { 			"HTTP": { 				"POST": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>/persistentUpdates.jason" 			} 		}, 		"parameter": { 			"name": "OutputFormat", 			"value": "text/json" 		} 	}, 	 	{ 		"name": "SetPersistentUpdatesForSegment", 		"DCP": { 			"HTTP": { 				"POST": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>/persistentUpdates/segments/<segmentID>.json" 			} 		}, 		"parameter": { 			"name": "OutputFormat", 			"value": "text/json" 		} 	}, 	 	 	{ 		"name": "SetPersistentUpdatesForRoadType", 		"DCP": { 			"HTTP": { 				"POST": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>/persistentUpdates/roadTypes/<roadtype>.json" 			} 		}, 		"parameter": { 			"name": "OutputFormat", 			"value": "text/json" 		} 	} 	 ]}

databases

Dieser Abschnitt enthält die Liste von Namen der Datenbanken, die im Server konfiguriert sind.

Beispiel:

{ 	"databases": 	[ 	"US_NE", 	"US" 	]}

Wenn keine Datenbank auf dem Server konfiguriert ist, wird dies zurückgegeben:

{ 	"databases":[ 	] }