reverse-geocoding - latitude - reverse geocoding javascript
¿Cómo revertir geocodificación sin Google? (7)
openstreetmap:
$.getJSON(''https://nominatim.openstreetmap.org/reverse'', {
lat: position.coords.latitude,
lon: position.coords.longitude,
format: ''json'',
}, function (result) {
console.log(result);
});
geonames
$.getJSON(''https://ws.geonames.org/countryCode'', {
lat: position.coords.latitude,
lng: position.coords.longitude,
type: ''JSON'',
username: ''demo''
}, function (result) {
console.log(result);
});
¿Hay algún servicio web (de pago o gratuito) además de la API de Google Maps que le permita invertir geocodificación?
Mi aplicación particular tendrá acceso a una latitud y longitud y necesito poder obtener el código postal o estado de los EE. UU.
La razón por la que no puedo usar Google es que los Términos de servicio parecen indicar que si usa la API de Google Maps, necesita usar los datos para mostrar un mapa de Google.
Estoy usando C # .Net framework en caso de que sea relevante.
ArcGIS proporciona una API gratuita (y pagada):
https://developers.arcgis.com/rest/geocode/api-reference/geocoding-reverse-geocode.htm
Proporciona una dirección para una ubicación determinada (lat / lon). Ni siquiera requiere una clave API, pero sugieren que obtenga una gratuita para evitar los límites de velocidad.
Aquí hay un ejemplo de llamada a la API, con una respuesta JSON:
Los geonames pueden darte un nombre de lugar:
http://ws.geonames.org/findNearbyPlaceName?lat=40.65&lng=-73.78
o un código postal:
http://ws.geonames.org/findNearbyPostalCodes?lat=40.65&lng=-73.78
Es gratis siempre que los acredites y necesites menos de 15000 búsquedas por día. Puedes pay si necesitas más.
No soy fan de la EM. Pero mira esto: http://msdn.microsoft.com/en-us/library/ff859477.aspx
La API del servicio de ubicación REST no parece publicar ninguna restricción.
Puede usar la API de ubicación por punto de búsqueda: http://msdn.microsoft.com/en-us/library/ff701710.aspx
Probé la muestra para geoNames, el resultado no es lo suficientemente bueno para mí porque necesito información del condado y el tiempo de respuesta es lento.
Utilizo http://nominatim.openstreetmap.org para búsquedas inversas, es muy fácil de usar:
El servicio de búsqueda Nominatim de MapQuest Open API es gratuito y no tiene límite de solicitud (límite suave de 1 / s).
http://open.mapquestapi.com/nominatim/v1/reverse.php?format=json&lat=44.0776182&lon=-92.5296981
TOS se puede encontrar here