有时候咱们须要根据发布的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的坐标系和图层相关
查询结果: