featureservice
v1.6.2
Published
Get all features from an Esri Feature Service
Downloads
175
Readme
featureservice
Get all features from an Esri Feature Service
A little module that extracts every feature from an Esri Feature Service. The real power in this module is that it's designed to page over a service and extract every single feature no matter what ArcGIS Server version the data is hosted on.
Install
npm install featureservice
Usage
var FeatureService = require('featureservice')
// a url to a feature service
var url = 'http://....../FeatureServer/0'
var service = new FeatureService(url, options)
service.pages(function (err, pages) {
/* will give you links to all pages of data in the service*/
})
Options
An object passed as the second parameter when initializing a service
- layer: the layer index to use
- size: the maximum page size when requesting features
- concurrency: the maximum concurrency for requesting features from a single server
- timeOut: the amount of time to wait with no response before cancelling a request
- logger: An object with a log method that takes a level and a message e.g. a Winston instance
API
info(callback)
Get the information describing the service itself
layerIds(callback)
Get all the ids in a feature service layer
layerInfo(callback)
Get the json metadata for a service layer
statistics(field, stats, callback)
Get statistics for a field and an array of stats.
service.statistics('id', ['min', 'max'], function (err, stats) {
console.log(stats.features)
})
pages(callback)
Returns an array of page urls that would get every feature in the service
Browser
A browser ready build of this module is in dist/featureservice.min.js
.
Example
<html>
<script src="dist/featureservice.min.js"></script>
<script>
var service = new FeatureService('http://koop.dc.esri.com/socrata/seattle/2tje-83f6/FeatureServer/0', {})
service.statistics('id', ['max'], function (err, stats) {
console.log(err, stats)
})
</script>
</html>