Pobierz kraj z szerokości geograficznej
Chciałbym wiedzieć, jak Mogę uzyskać nazwę kraju z szerokości i długości geograficznej za pomocą JavaScript. Otwieram do korzystania z Google Maps' JavaScript API. Czy Mogę też dostać city i zip?
Edit: moim celem jest automatyczne wypełnienie pola adresu, a nie wyświetlenie go na mapie.
6 answers
Nie wiem, czy działa z google maps, ale jest usługa internetowa, która zwraca kod kraju i przyjmuje jako parametry lat i long.
Oto przykład: http://api.geonames.org/countryCodeJSON?lat=49.03&lng=10.2&username=demo
Znalazłem też mały opis:
Kod iso danego punktu.
- Webservice Type: REST
- Url:
ws.geonames.org/countryCode?
- parametry:
lat
,lng
,type
,lang
,radius
(bufor w km dla najbliższego Państwa na obszarach przybrzeżnych)- wynik: zwraca kod iso kraju dla podanej szerokości / długości geograficznej
Z parametrem
type=xml
ta usługa zwraca dokument xml z kodem kraju iso i nazwą kraju. Opcjonalny parametr lang może być użyty do określenia języka, w którym powinna znajdować się nazwa kraju. Wyjście JSON jest produkowane ztype=JSON
Zobacz docs
Edit: zauważ, że {[8] } jest po prostu użytkownik demonstracyjny i należy utworzyć konto użytkownika na http://www.geonames.org/login w celu korzystania z serwisu.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-12-07 16:43:10
Google Geocoding API dostarcza te wyniki sresults w formacie JSON. Jest bezpłatny, ale możesz potrzebować zapłacić za nieograniczony dostęp.
Spróbuj poniżej link
http://maps.googleapis.com/maps/api/geocode/json?latlng=11.2742848,75.8013801
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-12-05 09:03:52
<form id="form1" runat="server">
<div>
<script type="text/javascript" src="http://j.maxmind.com/app/geoip.js" ></script>
<br />Country Code:
<script type="text/javascript">document.write(geoip_country_code());</script>
<br />Country Name:
<script type="text/javascript">document.write(geoip_country_name());</script>
<br />City:
<script type="text/javascript">document.write(geoip_city());</script>
<br />Region:
<script type="text/javascript">document.write(geoip_region());</script>
<br />Region Name:
<script type="text/javascript">document.write(geoip_region_name());</script>
<br />Latitude:
<script type="text/javascript">document.write(geoip_latitude());</script>
<br />Longitude:
<script type="text/javascript">document.write(geoip_longitude());</script>
<br />Postal Code:
<script type="text/javascript">document.write(geoip_postal_code());</script>
</div>
</form>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-03-08 13:40:18
Jeśli pożądana jest samodzielna biblioteka (tzn. brak połączenia z serwerem / Internetem i szybkość) i wymagane są tylko informacje o kraju, użyteczne może być poniższa biblioteka oparta na danych openstreetmap - https://github.com/hlaw/codegrid-js
<script type="text/javascript" src="[path]/codegrid.js"></script>
grid = codegrid.CodeGrid(); // initialize
grid.getCode (lat, lng, function (err, code) { ... });
Wywołanie zwrotne jest wywoływane przez code
, kod kraju dla latlng.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-09-20 17:41:56
Tak, możesz użyć google maps, aby znaleźć kraj dla danej szerokości geograficznej i długości geograficznej. Użyj usługi odwrotnego geokodowania .
Możesz uzyskać kraj, Miasto, Kod pocztowy i pełny adres z odpowiedzi otrzymanej z serwera. Sprawdź przykład z linku po szczegóły;)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-12-21 09:32:25
Jeśli używasz golang możesz użyć jednej z tych bibliotek 2, aby uzyskać kraj i nie musisz nawet wykonywać połączenia api, ponieważ zestaw danych jest wbudowany, więc jego nieograniczony.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-06-03 12:15:35