geocoder-arcgis
v2.0.5
Published
JavaScript wrapper for the ESRI ArcGIS geocoder
Downloads
2,438
Maintainers
Readme
GeocoderArcGIS
A promises based JavaScript wrapper for the ArcGIS Geocoder API. It uses fetch-everywhere to use in
- Node
- Browser
- React-native
Installation
Installing using npm:
npm i geocoder-arcgis -S
Usage
Initialization
const GeocoderArcGIS = require('geocoder-arcgis');
const geocoder = new GeocoderArcGIS({
client_id: 'YOUR CLIENT ID', // optional, see below
client_secret: 'YOUR CLIENT SECRET' // optional, see below
});
The constructor function also takes an optional configuration object:
- client_id: id for OAuth to use with "geocodeAddresses" or "forStorage" option. See reference
- client_secret: secret for OAuth to use with "geocodeAddresses" or "forStorage" option. See reference
- endpoint: custom ArcGIS endpoint
Geocode (findAddressCandidates)
geocoder.findAddressCandidates('380 New York Street, Redlands, CA 92373',{})
.then((result) =>{
console.log(result);
})
.catch(console.log);
You can pass a SingleLine string or an object to the geocoder.
Optional parameters:
- you can pass all request parameters
Reverse geocode (reverseGeocode)
geocoder.reverse('51.484463,-0.195405',{ // longitude,latitude
maxLocations: 10,
distance: 100
}).then((result) => {
console.log(result);
});
Optional parameters:
- you can pass all request parameters
Suggest (suggest)
geocoder.suggest('Glogauer Straße, Berlin',{})
.then((result) => {
console.log(result);
})
.catch(console.log);
Optional parameters:
- you can pass all request parameters
geocodeAddresses
geocoder.geocodeAddresses([
"380 New York St., Redlands, CA, 92373",
{
"Address": "1 World Way",
"Neighborhood": "",
"City": "Los Angeles",
"Subregion": "",
"Region": "CA"
}
],{})
.then((result){
console.log(result);
})
.catch(console.log);
You can pass an array of attributes to the geocoder. All required fields will be added/formatted automatically. If you don't pass in OBJECTIDs for each address, this library will create them for you. You can pass a SingleLine string or an object to the geocoder.
Optional parameters:
- you can pass all request parameters
Geocode (find) - deprecated
geocoder.geocode('Berlin',{})
.then((response) => {
console.log(response);
})
.catch(console.log);
Response
All methods return a promise.
See Also
- geoservices-js provides another client for the ArcGIS geocoder, using a callback interface instead of promises.