이준빈은 호박머리

IT 프로그래밍 개발 정보 블로그, 이준빈은 호박머리 입니다.

Open API/WEB

ASP에서 네이버 지도 지오코딩(좌표변환) 예제

준콩이 2013. 4. 17. 12:00
반응형

ASP에서 네이버맵 지오코딩(주소->좌표) 예제입니다.

아래 예제는 파일:ANSI, 소스:euc-kr 인코딩 설정에서 실행한 예제입니다.


빨간색으로 표시된 부분에는 네이버에서 발급 받은 API Key를 입력하셔야합니다.

참고) 네이버 지도 API 발급 방법 http://h5bak.tistory.com/151


파란색으로 표시된 부분은 XML 인코딩을 utf-8로 받아오는 부분입니다.

한글이 깨지거나 값을 불러오지 못할 경우 인코딩을 변경해보시기 바랍니다.


핑크색으로 표시된 부분은 파라미터를 넘겨줄 때 공백문자(띄어쓰기)를 제거해야 번지까지 정확하게 변환이 되더라구요.


네이버 지도 API 사용 시 좌표변환 결과는 XML 형태의 결과로 받아옵니다.

xml 결과를 파싱하여 사용하면 됩니다.

참고) XML에서 하위노드의 값을 컨트롤하는 사용 방법 : http://h5bak.tistory.com/149


<%

Session.CodePage  = 949

Response.CharSet  = "euc-kr"

Response.AddHeader "Pragma","no-cache"

Response.AddHeader "cache-control", "no-staff"

Response.Expires  = -1


addressStr = "강원도 강릉시 송정동"


Set xmlHttp = Server.CreateObject("Microsoft.XMLHTTP")

request_url = "http://openapi.map.naver.com/api/geocode.php?key=발급받은API키&encoding=utf-8&coord=latlng&query=" & Replace(addressStr," ","")

xmlHttp.open "GET", request_url, false

xmlHttp.send(null)

str_xml = xmlHttp.ResponseText


If str_xml <> "" Then

Set xmldoc = Server.CreateObject("Microsoft.XMLDOM")

xmldoc.async = false

xmldoc.validateOnParse = false

xmldoc.loadXML(str_xml)


If xmldoc.selectNodes("//total")(0).text > 0 Then

latStr = xmldoc.selectNodes("//y")(0).text '위도

lngStr = xmldoc.selectNodes("//x")(0).text '경도

Else

latStr = "0"

lngStr = "0"

End If


Set xmldoc = Nothing

Else

latStr = "0"

lngStr = "0"

End If


  Response.Write("addressStr 의 좌표는") & "<br />"

Response.Write("위도 : " & latStr) & "<br />"

Response.Write("경도 : " & lngStr)


Set xmlHttp = Nothing

%>


실행 결과


※ 네이버 지도는 역지오코딩(좌표->주소)은 제공하지 않습니다.

반응형