Hallo,
ich habe versucht, die folgende Abfrage zu testen, die in dieser Dokumentation beschrieben ist - https://developers.arcgis.com/rest/services-reference/enterprise/lr-acquire-locks/.
/MapServer/exts/LRServer/locks/acquire
Die Probleme, auf die ich gestoßen bin, sind:
Erstens scheint diese Abfrage eine POST-Abfrage zu sein und nicht GET, wie im Header des Links angegeben.
Zweitens wird der Parameter acquireLocks als „Optional“ angegeben, was tatsächlich falsch ist, und wenn ich ihn entferne, erhalte ich folgende Antwort:
{"error":{"code":400,"message":"'acquireLocks' parameter not specified.","details":[]}}
Wenn ich ihn wie folgt übergebe:
[{"routeId": "{myRouteUniqueID}", "layerId": 1}]
erhalte ich folgende Antwort:
{"error":{"code":400,"message":"'lineId' parameter not specified.","details":[]}}
Wenn ich folgenden acquireLocks-Parameter übergebe:
[{"routeId": "{myRouteUniqueID}", "layerId": 1}, {"lineId": "{myCenterlineUniqueId}", "layerId": 2}]
erhalte ich IMMER noch folgende Antwort:
{"error":{"code":400,"message":"'lineId' parameter not specified.","details":[]}}
Mein letztendliches Ziel ist es, Kalibrierungspunkte über die applyEdits-Abfrage (https://developers.arcgis.com/rest/services-reference/enterprise/apply-edits/) zu laden.
Dazu muss ich exklusive Sperren für die Routen erhalten, denen ich Kalibrierungspunkte hinzufügen möchte. Meine Fragen sind: Was soll ich als „routeId“, „lineId“ und „layerId“ übergeben und wie soll ich das machen? In der Dokumentation steht, dass das JSON so aussehen sollte:
[ { "routeId": "<routeId>", "layerId": <layerId> } | { "lineId": "<lineId>", "layerId": <layerId> }, ... ]
Was Unsinn ist, da „|“ in JSON nicht funktioniert und einen Fehler zurückgibt.
Also habe ich meine routeId als routeId gesetzt, meine CenterlineID als lineID und layerId als die IDs meiner veröffentlichten Centerlines- und Routen-Layer.
Kann mir jemand ein funktionierendes Beispiel für das JSON zeigen, das ich als acquireLocks-Parameter in der /MapServer/exts/LRServer/locks/acquire-Abfrage übergeben muss, um Sperren für mehrere Routen zu erstellen, damit ich anschließend Kalibrierungspunkte für diese Routen laden kann?
Vielen Dank im Voraus!