Skip To Content

Feature-Services und Client-Anwendungen

Es stehen verschiedene ArcGIS-Clients zur Verfügung, die Sie zum Bearbeiten (oder Anzeigen) der Features im Feature-Service verwenden können. Clients können Feature-Services entweder über einen Web-Client oder über ArcGIS Desktop nutzen.

Standardmäßige ArcGIS-Web-Clients

Map Viewer und die Vorlagen in ArcGIS Online und ArcGIS Enterprise bieten grundlegende Standardfunktionen für das Bearbeiten von Feature-Services. Ohne Programmieraufwand können Sie schnell eine Webediting-Anwendung erstellen, über die die Benutzer geographische Features aus einer Datenbank hinzufügen, aktualisieren und löschen können.

Wenn Sie die Standardanwendungen verwenden, haben Sie beispielsweise die folgenden Möglichkeiten:

  • Bearbeiten bestimmter Layer
  • Verfolgen von Änderungen (Dies ist für Enterprise-Geodatabases, nicht für Datenbanken verfügbar.)
  • Steuern des Zugriffs auf Features über die besitzbasierte Zugriffssteuerung. (Dies ist für Enterprise-Geodatabases, nicht für Datenbanken verfügbar.)
  • Verhindern einer Bearbeitung der Feature-Geometrie durch Benutzer

Sie können Map Viewer in ArcGIS Online oder auf der Website des Portals mithilfe der URL des ArcGIS Server-Services-Verzeichnis Feature-Services hinzufügen. Sobald Sie eine Karte erstellt haben, die Ihren Feature-Service enthält, können Sie sie für andere Benutzer in Ihrer Organisation freigeben, in einer Website einbetten oder einen Link (URL) auf die Anwendung in einer E-Mail, in einem Blog oder auf einer Website bereitstellen. Die von Ihnen erstellten Karten können auch über den Webserver Ihrer Organisation bereitgestellt werden, indem Sie Anwendungsvorlagen von ArcGIS Online herunterladen. Diese Vorlagen können vollständig angepasst werden.

In den folgenden Lernprogrammen wird ein Feature-Service zusammen mit ArcGIS.com map viewer verwendet, um Features zu bearbeiten:

Sie können im Portal oder in ArcGIS Online auch Feature-Services hinzufügen und für andere Mitglieder Ihrer Organisation freigeben.

Weitere Informationen zur Verwendung von Portal for ArcGIS finden Sie in der Portal for ArcGIS-Hilfe.

ArcGIS API for JavaScript-Clients

ArcGIS API for JavaScript bietet die umfassendsten Webediting-Funktionen und Anpassungsmöglichkeiten. Wenn Ihnen das Programmieren mit dieser API vertraut ist, können Sie Ihren Benutzern erweiterte, webbasierte Bearbeitungsfunktionen bieten, indem Sie Ihr Bearbeitungsszenario auf einen bestimmten Zweck, ein Ziel oder eine Organisationsstrategie abstimmen. Die ArcGIS API for JavaScript hält beispielsweise folgende Möglichkeiten für Sie bereit:

  • Bearbeiten bestimmter Layer
  • Verfolgen von Änderungen (Dies ist für Enterprise-Geodatabases, nicht aber für Datenbanken verfügbar.)
  • Steuern des Zugriffs auf Features über die besitzbasierte Zugriffssteuerung
  • Verhindern einer Bearbeitung der Feature-Geometrie durch Benutzer
  • Erstellen, Löschen und Ändern von Geodatabase-Versionen "on-the-fly"
  • Bearbeiten von kartografischen Repräsentationen

Abrufen des REST-Endpunktes eines Feature-Service

Den REST-Endpunkt oder die URL eines Feature-Service erhalten Sie, indem Sie im Services-Verzeichnis von ArcGIS Server zu dem Service navigieren. Zum Beispiel lautet die Standard-URL zu einem Feature-Service im Services-Verzeichnis http://gisserver.domain.com:6080/arcgis/rest/services/folder/service/FeatureServer. Die URL kann durch einen nullbasierten Ganzzahlwert als Referenz auf einen bestimmten Layer im Service ergänzt werden. So verweist beispielsweise eine URL, die auf /0 endet, auf den ersten Layer im Service.

ArcGIS Desktop

Mit ArcGIS Desktop können Sie Feature-Service-Daten bearbeiten. Der Workflow für die Bearbeitung in ArcGIS Desktop unterscheidet sich wesentlich von der Bearbeitung eines Feature-Service über eine Webanwendung. Weitere Informationen hierzu finden Sie unter Bearbeiten von Daten aus Feature-Services.

Verwenden der Synchronisierungsfunktion mit Feature-Services

Feature-Services umfassen Operationen, die Workflows zur entkoppelten Bearbeitung unterstützen. In einer entkoppelten Umgebung kann der Client (z. B. ein Runtime- oder mobiles Gerät) lokal Änderungen vornehmen und dann diese Änderungen mit dem Server synchronisieren, sobald der Client wieder mit dem Feature-Service verbunden ist. Diese als Synchronisierung bezeichnete Funktion ist über die ArcGIS-REST-API verfügbar.

Weitere Informationen zum Verwenden der Synchronisierungsfunktion mit Feature-Services finden Sie im Abschnitt "Synchronisierung" der Hilfe zur ArcGIS Server-REST-API.

Verbessern der Darstellungs-Performance von Feature-Service

Wenn Clients Anforderungen an ArcGIS Server senden, um einen Feature-Service abzufragen, wird die Antwort vom Server normalerweise im Browser gecacht und für einen bestimmten Zeitraum wiederverwendet. Abhängig davon, wie der Feature-Service und die ihm zugeordneten Daten in Anwendungen verwendet werden, können Sie die Länge des Zeitraums anpassen, in der der Browser eine Antwort aus seinem Cache verwendet. Dies können Sie erreichen, indem Sie eine Eigenschaft mit dem Namen cacheControlMaxAge zur JavaScript Object Notation (JSON) des Service hinzufügen.

Verwendung der cacheControlMaxAge-Eigenschaft

ArcGIS Server-Feature-Service-Antworten enthalten ein Entitätstag (ETag) und einen Cache-Control-Header. Der ETag-Header-Wert ist eine eindeutige Kennung der Antwort. Der Cache-Control-Header enthält einen max-age-Wert, der dem Browser Informationen zum maximalen Zeitraum bereitstellt, in dem eine Antwort aus dem Browser-Cache wiederverwendet werden kann. Dieser Wert wird von der Eigenschaft cacheControlMaxAge festgelegt.

Wenn eine vorherige Anforderung wiederholt wird und das maximale Alter des Cache nicht überschritten wurde, verwendet der Browser die gecachte Antwort, ohne die Anforderung an den Server zu senden. Wenn das maximale Alter überschritten wurde, muss der Browser die Anforderung an den Server senden und einen IF-NONE-MATCH-Header mit zugeordnetem ETag-Wert festlegen, der der Antwort im Cache entspricht. ArcGIS Server wertet die Anforderung aus und bestimmt anhand des ETag-Wertes, ob sich die Antwort geändert hat. Wenn sich die Antwort vom Server von der Kopie im Browser unterscheidet, sendet der Server eine vollständig neue Antwort an den Browser. Wenn die Antwort mit der Kopie im Browser identisch ist, benachrichtigt der Server den Browser, dass die Antwort im Cache weiter verwendet werden soll.

Definieren des Wertes der cacheControlMaxAge-Eigenschaft

Definieren Sie die Eigenschaft cacheControlMaxAge, um anzugeben, wie lange ein Browser eine gecachte Antwort verwenden darf. Diese Eigenschaft ist für Service-Caches individuell einstellbar. Da ArcGIS Server nicht immer eine vollständige Antwort senden muss, kann der Browser-Cache effizienter verwendet werden, Ihre Anwendungen werden optimiert, und es wird Netzwerkbandbreite gespart.

Für Feature-Services beträgt der Standardwert null Sekunden. Demzufolge sendet der Browser eine Anforderung immer erneut, und ArcGIS Server verarbeitet die Anforderung und sendet eine vollständige Antwort an den Browser, wenn sich der Inhalt geändert hat. Dieser Wert eignet sich für die meisten Anwendungen.

Bei Feature-Services, deren Daten sich nicht häufig ändern, empfiehlt es sich, den Standardwert auf 30 Tage (2.592.000 Sekunden) oder länger zu erhöhen, um den Netzwerkdatenverkehr so gering wie möglich zu halten.

Gehen Sie wie folgt vor, um die cacheControlMaxAge-Eigenschaft zu Ihrem Service hinzuzufügen und ihren Standardwert anzugeben:

  1. Öffnen Sie in einem Web-Browser das ArcGIS Server-Administratorverzeichnis, und melden Sie sich als Benutzer an, dem Administratorberechtigungen zugewiesen sind. Die URL hat das Format http://gisserver.domain.com:6080/arcgis/admin.
  2. Klicken Sie auf Services, und wählen Sie den Feature-Service, den Sie ändern möchten, aus der Liste der Services aus. Wenn der Service nicht in der Liste angezeigt wird, befindet er sich möglicherweise in einem Unterverzeichnis des Stammordners.
  3. Führen Sie auf der Seite des Ziel-Feature-Service einen Bildlauf bis zum unteren Rand aus, und klicken Sie auf edit.
  4. Das Dialogfeld Service Properties wird geöffnet. Navigieren Sie zu der Position in der JSON-Datei, an der die Eigenschaft cacheControlMaxAge eingefügt wird. Die Position hängt davon ab, wo der Feature-Service veröffentlicht wird:
    • Wenn der Feature-Service in einem verbundenen oder eigenständigen ArcGIS Server veröffentlicht wird, suchen Sie den Abschnitt "extensions" der JSON-Datei. Navigieren Sie zu dem Unterabschnitt, der "typeName": "FeatureServer" enthält. Die Eigenschaft cacheControlMaxAge wird in den Parameter properties dieses Unterabschnitts eingefügt.
    • Wenn der Feature-Service in einem ArcGIS Enterprise-Portal veröffentlicht wird, suchen Sie den Abschnitt "jsonProperties" der JSON-Datei für die Service-Eigenschaften. Fügen Sie diesem Abschnitt die Eigenschaft cacheControlMaxAge hinzu.
  5. Fügen Sie die Eigenschaft cacheControlMaxAge dem richtigen Abschnitt hinzu, und geben Sie den Wert (in Sekunden) für die Eigenschaft an. Um beispielsweise die Eigenschaft "max-age" auf 30 Tage festzulegen, fügen Sie "properties": { "cacheControlMaxAge": "2592000", } ein.

    Wenn der Feature-Service in einem verbundenen oder eigenständigen ArcGIS Server veröffentlicht wird:

    {
       "typeName": "FeatureServer",
       "capabilities": "Query,Create,Update,Delete,Uploads,Editing",
       "enabled": "true",
       "maxUploadFileSize": 0,
       "allowedUploadFileTypes": "",
       "properties": {
        "cacheControlMaxAge": "2592000",}
    }

    Wenn der Feature-Service in einem ArcGIS Enterprise-Portal veröffentlicht wird:

    "jsonProperties": {**
      "currentVersion": 10.6,  "serviceDescription": "",  "maxRecordCount": 2000,  "cacheControlMaxAge": "2592000",
    }
  6. Klicken Sie auf Save Edits.
  7. Stellen Sie auf der Seite des Feature-Service sicher, dass die Eigenschaft cacheControlMaxAge und der Wert, den Sie dafür angegeben haben, im Abschnitt Properties angezeigt wird.

Eingeben von HTML in Textfelder

Beim Bearbeiten eines Feature-Service in einer Client-Anwendung können Sie HTML in Textfelder eingeben. Wenn Sie beispielsweise ein Feature in einem Web-Client bearbeiten, können Sie in ein Kommentarfeld mit einem Stylesheet verknüpften HTML-Code eingeben. Standardmäßig können nur die in der folgenden Tabelle aufgeführten HTML-Entitäten und -Attribute in die Textfelder des Feature-Service eingegeben werden. Es wird eine Fehlermeldung zurückgegeben, wenn Sie versuchen, nicht unterstützte Entitäten oder Attribute hinzuzufügen.

Wenn für den Feature-Service-Workflow nicht unterstützte HTML-Entitäten und -Attribute erforderlich sind, müssen Sie die Eigenschaft Web-Inhalt filtern deaktivieren. Sie können auf diese Eigenschaft zugreifen, indem Sie in ArcGIS Desktop oder ArcGIS Server Manager das Dialogfeld Erweiterte Optionen für den Feature-Service aufrufen. Weitere Informationen finden Sie unter folgenden Themen:

HTML-EntitätHTML-Attribut (falls zutreffend)

<a>

href, target, style

<b>

<br>

<div>

style, align

<em>

<font>

size, color, style, face

http, https protocol

src, href

<i>

<img>

src, width, height, alt, border, style

<li>

mailto: protocol

src, href

<ol>

<span>

style

<strong>

<table>

width, height, cellpadding, cellspacing, border, style

<tbody>

<td>

height, width, valign, align, colspan, rowspan, nowrap, style

<tr>

height, valign, align, style

<u>

<ul>