Ich füge einen dynamischen Map-Service zu einer ArcGIS Server-JavaScript-API-Map hinzu und muss jeden Komponenten-Layer und seine Felder erfassen, damit ich eine Abfrage ausführen kann.
Weitere Informationen finden Sie im Beispielverzeichnis für ArcGIS Server-Dienste unter http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/HomelandSecurity/operations/MapServer
Wenn Sie diese URL in einem Browser öffnen, sehen Sie die Liste der verfügbaren Ebenen (0,1,2) und die Felder der einzelnen Ebenen .
Wie kann ich die Liste der Felder innerhalb einer JavaScript-Funktion programmgesteuert abrufen? Das folgende Codefragment zeigt, wie die Ebenenendpunkte abgerufen werden, aber ich kann nicht sehen, wie ich zu den Feldern komme.
(Eine Möglichkeit besteht darin, die Ebenen als Feature-Ebenen hinzuzufügen, aber ich würde dies nach Möglichkeit lieber vermeiden.)
var url = "http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/HomelandSecurity/operations/MapServer/";
var dynLayer = new esri.layers.ArcGISDynamicMapServiceLayer(url);
map.addLayer(dynLayer);
dojo.connect(dynLayer, "onLoad", function() {
var infos = dynLayer.layerInfos;
for (var i = 0; i <= infos.length - 1; i++) {
var layerId = infos[i].id;
var restEndPoint = url + layerId;
//restEndPoint is the layer's URL - how can I retrieve its fields?
}
});
Vielen Dank, Steve (im ArcGIS Server-Forum veröffentlicht )