Geocoder.ca Module
Node.js module to interface with the Geocoder.ca API.
Usage
Accepts a location
argument and a callback
. callback
receives
two params: err
and coords
. In the case of an error, err
will
contain an Error
object. Otherwise, coords
will be populated with
a Coords
object, with lat
and lon
properties.
location
can be one of the following:
- a String with location (eg. "525 Market St, Philadelphia, PA 19106")
- a String with a zip/postal code (eg. "19106" or "M4A 2L7")
- a Number with a 5-digit zip code (eg. 19106)
- an Object containing one of the following:
- a single
locate
property containing one of the above - a single
postal
propery containing a zip or postal code - the following four properties:
addresst
,stno
,city
, andprov
- a single
If location
is an object, it is converted to a query string and passed directly
to the Geocoder.ca API. See API docs for parameters.
Example
var Geocoder = Geocoder geocoder = address = '525 Market St, Philadelphia, PA 19106'; geocoder;
Events
The Geocoder
object is an event emitter. It emits the following events:
- A
result
event happens whenever geocoding succeeds. It passes aCoords
object to any listeners. - A
error
event happens whenever there is an error. It passes theError
object to any listeners.
You can choose to skip the callback
on the geocode()
method and listen for events instead.
Warning: this usage is currently untested.
Example:
var Geocoder = Geocoder geocoder = address = '525 Market St, Philadelphia, PA 19106'; geocoder ;
Todo
- Basic geocoding
- Suggestions on failed geocoding
- Reverse geocoding
- Tests for event-based usage