有時候咱們須要根據發佈的arcgis服務查詢服務上的一些數據,好比點擊地圖上的某個位置,好比根據某個關鍵字進行要素查詢等等,而arcgis關於這方面的api經常使用的有三個:find、query和identify。html
查找操做在地圖服務資源上執行。此操做的結果是查找結果資源。每一個結果都包含其值,要素ID,字段名稱,圖層ID,圖層名稱,幾何圖形,幾何類型以及名稱 - 值對形式的屬性。json
api說明:http://xxx/arcgis/sdk/rest/in...
查詢示範:http://xxx/arcgis/rest/servic...
查詢條件:
api
查詢示例:http://xxx/arcgis/rest/services/my_layer/MapServer/find?searchText=%E5%90%88&contains=true&searchFields=RNAME&sr=&layers=0%2C1%2C2%2C3%2C4%2C5&layerDefs=&returnGeometry=false&maxAllowableOffset=&geometryPrecision=&dynamicLayers=&returnZ=false&returnM=false&gdbVersion=&f=pjson
查詢說明:模糊查詢RNAME屬性帶有合字的數據,結果不包含邊界數據
查詢結果:
ide
查詢操做在動態層/表資源上執行。此操做的結果是一個功能集。此功能集包含Feature對象,包括用戶請求的字段的值。對於圖層,若是請求幾何圖形信息,則每一個要素的幾何圖形也會在要素集中返回。對於表,功能集不包括幾何。spa
當輸出格式f爲kmz時,結果將始終包含Z值,而與returnZ屬性值無關。若是要素幾何不支持Z,則將爲Z返回默認值0。rest
api說明:http://xxx/arcgis/sdk/rest/index.html#//02ss00000081000000
查詢示範:http://xxx/arcgis/rest/services/my_layer/MapServer/93/query
code
其中93是具體的圖層,在這個服務中表示縣級行政區
查詢條件:
查詢示例:http://xxx/arcgis/rest/services/my_layer/MapServer/93/query?where=CODE=340102&f=json
查詢說明:根據where查詢CODE等於340102的行政地區,結果包含邊界數據
查詢結果:
htm
查詢示例:http://xxx/arcgis/rest/services/my_layer/MapServer/85/query?f=json&where=1=1&returnGeometry=true&spatialRel=esriSpatialRelIntersects&objectIds=1&outFields=*&outSR=102100
查詢說明:查詢85圖層中objectid爲1的數據,結果包含邊界數據
查詢結果:
對象
在地圖服務資源上執行識別操做以發現地理位置處的特徵。此操做的結果是識別結果資源。每一個標識的結果包括其名稱,圖層ID,圖層名稱,幾何和幾何類型,以及做爲名稱 - 值對的結果的其餘屬性。圖片
應用場景:點擊地圖,查詢點擊位置所具備的要素或圖層
api說明:http://xxx/arcgis/sdk/rest/index.html#/Identify_Map_Service/02ss000000m7000000/
查詢示範:http://xxx/arcgis/rest/services/my_layer/MapServer/identify
查詢條件:
查詢示例:http://xxx/arcgis/rest/services/my_layer/MapServer/identify?f=json&tolerance=5&returnGeometry=false&imageDisplay=1073,897,96&geometry={%22x%22:13095597.208668906,%22y%22:3709649.674951799}&geometryType=esriGeometryPoint&sr=102100&mapExtent=12937525.434175162,3602943.583465693,13265593.159575136,3877199.640952905&layers=all:77,74,73,52
查詢說明:根據經緯度x,y查詢數據,xy的座標系和圖層相關
查詢結果: