2010-12-21 3 views
40

위도가 (가) 경도 & 경도에서 JavaScript를 사용하여 국가 이름을 얻을 수있는 방법을 알고 싶습니다. Google Maps JavaScript API를 사용할 수 있습니다. 도시와 우편 번호를 얻을 수 있습니까?위도 경도에서 나라를 가져주십시오

편집 : 내 목표는지도에 표시하지 않고 주소 입력란을 자동으로 채우는 것입니다.

+0

는 http://code.google.com/apis/maps/documentation/geocoding/ – deceze

+2

참조 ** [위도/경도 좌표 감안할 때, 우리는 어떻게 밖으로 찾을 수 있습니다 도시/국가?] (http://stackoverflow.com/questions/6159074/given-the-lat-long-coordinates-how-can-we-find-out-the-city-country) ** – hippietrail

답변

51

Google지도에서 작동하는지 모르겠지만 국가 코드를 반환하고 위도 및 경도 매개 변수로 사용하는 웹 서비스가 있습니다. 여기

은 예입니다 : 주어진 점의

는 ISO 국가 코드 : http://api.geonames.org/countryCodeJSON?lat=49.03&lng=10.2&username=demo

가 나는 또한 약간의 설명을 발견했다.

  • Webservice를 유형 : ws.geonames.org/countryCode?
  • 매개 변수 : lat, lng, type, lang, radius
  • 결과 (해안 지역에서 가장 가까운 나라 km에 버퍼)는 ISO 국가를 반환
  • URL이 REST 주어진 위도/경도에 대한 코드

매개 변수가인 경우이 서비스는 ISO 국가 코드 및 국가 이름이있는 XML 문서를 반환합니다. 선택적 매개 변수 LANG은 국가 이름에 있어야 언어를 지정하는 데 사용할 수 있습니다 JSON 출력 type=JSON

으로 생산되는 docs

편집을 참조하십시오.demo 그냥 데모 사용자이므로주의 해주십시오 이 서비스를 사용하려면 http://www.geonames.org/login에 사용자 계정을 만들어야합니다.

+0

어떻게해야합니까? 이 데이터를 자바 스크립트 – aWebDeveloper

+0

geonames.org +1에서 읽으십시오. 또한 http://www.maxmind.com/을 확인하십시오. –

+0

geonames.org +1 –

5

예, Google지도를 사용하여 위도와 경도의 국가를 찾을 수 있습니다. reverse geocoding service을 사용하십시오.

서버에서받은 응답에서 국가, 도시, 우편 번호 및 전체 주소를 얻을 수 있습니다. 독립적 인 라이브러리 (즉, 어떤 서버/인터넷 연결, 빠른)이 바람직한 경우)

9
<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> 
5

, 그리고 유일한 국가 정보 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) { ... }); 

콜백은 위도와 경도의 국가 코드, code 호출합니다.

+0

자바 스크립트가 json 파일을 로컬에서 읽을 수없는 경우 어떻게 서버없이이 작업을 수행 할 수 있습니까? – CodeCabin

10

Google 지오 코딩 API는 이러한 결과를 JSON formate에서 제공합니다. 무료이지만 무제한 액세스 요금을 지불해야 할 수도 있습니다.

를 넣고 링크를 시도하십시오

http://maps.googleapis.com/maps/api/geocode/json?latlng=11.2742848,75.8013801 
+0

간단하고 똑똑합니다. 감사합니다 –

+0

무제한 액세스 란 무엇입니까? – CENT1PEDE

+0

Google지도 지오 코딩 API에는 무료 사용에 대한 몇 가지 제한 사항이 있습니다. 일일 최대 무료 요청 수는 2,500 명입니다. 초당 최대 무료 요청은 10입니다. 자세한 내용은 https://developers.google.com/maps/documentation/geocoding/usage-limits을 참조하십시오. –

관련 문제