2010-04-18 44 views
35

¿Es posible obtener el valor de longitud y latitud desde la dirección IP en asp.net? Si es posible, hágamelo saber cómo puedo obtener esto.Longitud y latitud desde la dirección IP

+0

Intenta [MaxMind] (http://www.maxmind.com/app/ip-location) – codaddict

+0

Gracias Unicomaddict, Pero no es libre :(Cualquier otro enlace !! – Zerotoinfinity

+1

https:.//ipdata.co es gratis hasta 1500 solicitudes diarias! También es extremadamente rápido con 10 puntos finales en todo el mundo, cada uno capaz de manejar llamadas> 800M por día! – Jonathan

Respuesta

33

MaxMind Geolite city es gratis. Si no es lo suficientemente bueno, aparentemente puede actualizar a una versión paga más precisa. No puedo hablar por la calidad de la versión paga, ya que nunca la he usado.

Si te gusta tu SQL, descarga el CSV version. Colóquelo en su base de datos de su elección y consulte de inmediato.

La opción más rápida y eficiente es download the file binary blob version de la misma base de datos, y luego use the C# class para consultarla.

Alternativamente, he encontrado ipinfodb.com para ser útil. La consulta es por simple HTTP GET. Por ejemplo, para geolocalizar stackoverflow.com tratar:

http://ipinfodb.com/ip_query.php?timezone=false&ip=69.59.196.211 

Esto devolverá un archivo XML que contiene la latitud y longitud, que se parece a:

<Response> 
    <Ip>69.59.196.211</Ip> 
    <Status>OK</Status> 
    <CountryCode>US</CountryCode> 
    <CountryName>United States</CountryName> 
    <RegionCode>41</RegionCode> 
    <RegionName>Oregon</RegionName> 
    <City>Corvallis</City> 
    <ZipPostalCode>97333</ZipPostalCode> 
    <Latitude>44.4698</Latitude> 
    <Longitude>-123.343</Longitude> 
</Response> 

algunos ejemplos de código VB.NET está disponible en http://forum.ipinfodb.com/viewtopic.php?f=7&t=269

+1

Requieren registro para obtener una clave de API desde este post, pero es libre y relativamente indoloro. – Merijn

+0

un gran servicio. Ustedes gracias – chester89

+0

I han estado utilizando este servicio de forma gratuita con un crédito en la página y ha sido sólido. –

2

Se puede utilizar un servicio como: http://freegeoip.appspot.com/

No va a ser totalmente exacta.

Here es un tutorial sobre consumir el servicio utilizando ASP.Net.

+0

Hola Thedugas, http: //freegeoip.appspot.com/no funciona correctamente y he implementado lo mismo que está arrojando un error 503. Puede ser que este servicio se detenga. :( Por favor, hágamelo saber si usted tiene otros pensamientos. Gracias de nuevo por su respuesta. – Zerotoinfinity

2

Pruebe IPInfoDB que, hasta donde yo sé, es gratis.

Proporcionan bases de datos descargables, pero la solución más fácil parece ser la API XML. Los ejemplos proporcionados son para php, pero estoy seguro de que es igualmente accesible con ASP.Net.

0

Si está intentando acceder a su ubicación a través de un cliente de JavaScript, la API de ubicación geográfica disponible con HTML 5 es muy útil.

if(navigator.geolocation){    
    navigator.geolocation.getCurrentPosition(geoLocationSuccess, geoLocationError); 
} 

geoLocationSuccess y geoLocationError son las devoluciones de llamada para el éxito y el error, respectivamente.

function geoLocationSuccess(position){ 
    alert('lat: ' + position.coords.latitude + ', lon: ' + position.coords.longitude); 
} 
+1

En este caso, el usuario tiene que dar permiso a través de una alerta en el navegador que no siempre es buena ya que pueden no confiar en el sitio o rebotar – GAV

Cuestiones relacionadas