2012-12-10 31 views
10

Kullanıcımın IP Geolocation'ını Canlı saatte almak için herhangi bir Google API'sini kullanmanın bir yolu var mı?Google IP Coğrafi Konum API'si

Bence Analytics Veritabanını kullanacak ve bu sadece şehirdeki kullanıcı seviyesinde gerçekten doğru olanı izleyen tek kişidir (Test edebileceğim başka bir IP-Location-API, IP adresimi yaklaşık 200km mesafede gösterir. Google gerçek konumumu gösterir: Google, 200m (!) uzakta gösterir!)

Kullanıcıya Yer bilgisini (Tarayıcı tarafında ve Sunucu tarafına veya Sunucu tarafına iletmek), Şehre bağlı içeriğe hizmet etmek istiyorum. Ancak, kullanıcılarım bu sıkıcı pop'lardan birini GPS kullanarak sormak istemiyorum, bu yüzden IP adresini kullanmak istiyorum.

Herhangi bir öneriniz var mı?

+0

Ben [Google Maps Coğrafi Konum API] (https://developers.google.com/maps/documentation/ kullanıyor [burada] bir cevap (http://stackoverflow.com/a/40049684/426790) yayınlanmıştır konum belirleme/giriş). –

cevap

10

MaxMind's GeoIP Lite database, ücretsiz ve kullanım durumlarının% 99'u için iyi çalışıyor. Daha doğru/ayrıntılı bilgi ile başka herhangi bir hizmet size çok pahalıya mal olacak. MaxMind birçok kişi tarafından övgüler alıyor ve kişisel olarak ihtiyaçlar için iyi çalışıyor. Size Ülke/Bölge/Şehir/Enlem-Boylam-Koordinat/Kıta bilgilerini verebilir.

+0

Hmm: Yahoo Jason Fesler bu güverte kontrol edin. IP veritabanını kullanacağım ve HTML5-Coğrafi Konum'u etkinleştiren kullanıcılar için bir "Yer tabanlı" düğmesi kullanacağımı düşünüyorum. IP adresimin doğruluğunu test etmek için MaxMinds GeoIP DB için bir Test Sayfası var mı? – keykiller91

+0

Bildiğim kadarıyla değil. Bunu test etmenin en iyi yolu, indirip kendiniz denemek. – Sherif

+1

Maxmind de ücretsiz bir lisans sözleşmesi var :( –

0

Bir konumu gerçek adresini almak için Google'ın coğrafi kodlama API kullanabilirsiniz ancak bu API için gerekli girdiler enlem ve boylam koordinatları bulunmaktadır.

Örnek: http://maps.googleapis.com/maps/api/geocode/json?latlng=43.473,-82.533&sensor=false

Bir şehir düzeyine almak ya da onların coğrafi konum için erişim izni için komut vermeye seçeneği tutmak için diğer bazı satıcıdan Yer API bulmalıyız ve IP.

IPInfoDB otomatik kullanım girişi olmadan IP yoluyla konumunu daralan de oldukça iyi bir iş yapar: Eğer HTML5 style client-enabled GeoIP information kullanmak istemiyorsanız, aşağıdaki gibi bir GeoIP veritabanını ihtiyacımız olacak

http://ipinfodb.com/ip_location_api.php

+0

Yolu Yok! Aslında IPInfoDB kullanıyorum ve Unitymedia'dan (yerel bir ISS) gelen kullanıcılar konum tabanlı servisleri kullanamıyorlar, çünkü hepsini tek bir Şehre yerleştiriyorlar (bu Google Analytics’te bile görünmüyor) – keykiller91

+0

Unitymedia vakası IPinfoDB'nin hatası değil. Eğer belirli bir ISS ise, Carrier Grade NAT kullanıyor olabilirler, bu da etkili bir şekilde tüm bölgedeki insanların küçük bir IP havuzu kullandığını ve bunun hangi oturumu sadece IP adresiyle çözülmesini imkânsız kıldığı anlamına gelir. Ben herhangi bir şekilde Google'ın Verilerini geleceğini düşündüm ... http://meetings.apnic.net/__data/assets/file/0003/38298/fesler_yahoo_2011_post_ipv6_day_20min.pptx.pdf –

İlgili konular