ubicacion - obtener latitud y longitud de una direccion javascript
¿Cómo obtengo direcciones de latitud y longitud con la geolocalización de HTML5 o la API de Google? (5)
Estoy desconcertado con un problema, es decir, puedo obtener la ubicación de un usuario de Facebook y todo lo que necesito es obtener la latitud y la longitud de esa ubicación, pero todavía no pude encontrar una solución.
Ayudaría si pudiera obtener esa latitud y longitud usando una geolocalización HTML5 o cualquier API de Google. ¿Cuál es la solución?
Echa un vistazo a Gisgraphy, un servicio geo de código abierto gratuito.
Todos te dirán que uses la API de Google Maps, pero lee los términos de uso .
(g) Sin uso de contenido sin un mapa de Google. No debe usar ni mostrar el Contenido sin un mapa de Google correspondiente, a menos que esté explícitamente autorizado a hacerlo en la Documentación de API de Google Maps, o mediante un permiso por escrito de Google. En cualquier caso, no debe usar ni mostrar el Contenido en o junto con un mapa que no sea de Google. Por ejemplo, no debe usar los códigos geográficos obtenidos a través del Servicio junto con un mapa que no sea de Google. Como otro ejemplo, no debe mostrar imágenes de Street View junto a un mapa que no sea de Google, pero puede mostrar imágenes de Street View sin un mapa de Google correspondiente porque la documentación de las API de Maps le permite hacerlo explícitamente.
Entonces, con la API de Google debe usar un mapa de Google . Entonces, si necesitas un mapa, estás bien.
Flyleaf, trabajo en SmartyStreets donde también proporcionamos una API para obtener las coordenadas de las direcciones; se llama API LiveAddress .
Como Bart mencionó, los TDS de Google no te permitirán geocodificar sin mostrar un mapa de Google, y lo que es más, no puedes almacenar los resultados. Si está buscando una dirección como sugirió, recomiendo algo como LiveAddress, que también verificará la validez de la dirección; estas otras API y HTML5 no lo harán.
Espero que encuentres algo que funcione para ti. La pregunta en este momento es un poco vaga, pero tal vez esto ayude. Puede ser algo como esto ( con Javascript ):
LiveAddress.geocode(address, function(geo) {
alert("The address is at: " + geo.coords);
});
if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(successFunction, errorFunction); } else { alert(''It seems like Geolocation, which is required for this page, is not enabled in your browser. Please use a browser which supports it.''); }
Si el navegador admite geolocalización y si getCurrentPosition
ejecuta con éxito, se llama a una función de éxito. Y luego en la función successFunction
tener
function successFunction(position) {
var lat = position.coords.latitude;
var long = position.coords.longitude;
console.log(''Your latitude is :''+lat+'' and longitude is ''+long);
}
Obtenga más información sobre la API de geolocalización aquí
- http://dev.opera.com/articles/view/how-to-use-the-w3c-geolocation-api/ (Descargo de responsabilidad: mi artículo)
- http://dev.w3.org/geo/api/spec-source.html (The Spec)
Ayudaría si pudiera obtener esa latitud y longitud usando una geolocalización HTML5
Bueno, entonces haz exactamente eso, ¿dónde está exactamente tu problema?
Para eso es el método getCurrentPosition
.
Encontré la mejor opción para usar OpenStreetMap directamente a través de un subproyecto ( Nominatim ) API que tienen.
Ejemplo de llamada REST : http://nominatim.openstreetmap.org/reverse?format=xml&lat=35.958&lon=-83.952&zoom=18
Tenga en cuenta que si bien sus términos de servicio permiten el uso directo del lado del cliente desde el JavaScript del navegador, no desean un gran volumen de uso y sugieren usar su servidor como un proxy para agregar el almacenamiento en caché y así poder cambiarlo fácilmente. Los datos están disponibles para su descarga, y se proporcionan instrucciones para configurar una base de datos de datos localmente consultable.