Daum Postcode Service User Guide 페이지에서 주소를 선택하면 지도도 함께 보여주기 항목의 내용에서 "다음 지도 API를 이용하시려면 https://developers.daum.net에서 API Key를 발급받으셔야 합니다."라는 내용이 기제되어 있습니다…
그렇다면 https://developers.daum.net 에서 apikey 발급받아야 되는데, 현제 https://developers.daum.net는 운영이 중단되어 발급받지 못하고 있어 https://developers.kakao.com 에서 발급받아 입력했는데 실행이 되질 않습니다…
아래의 소스를 참고하시어 자세한 설명 부탁드립니다.
<script>
//주소
function sample4_execDaumPostcode() {
new daum.Postcode({
oncomplete: function(data) {
// 팝업에서 검색결과 항목을 클릭했을때 실행할 코드를 작성하는 부분.
// 도로명 주소의 노출 규칙에 따라 주소를 조합한다.
// 내려오는 변수가 값이 없는 경우엔 공백('')값을 가지므로, 이를 참고하여 분기 한다.
var fullRoadAddr = data.roadAddress; // 도로명 주소 변수
var extraRoadAddr = ''; // 도로명 조합형 주소 변수
// 법정동명이 있을 경우 추가한다. (법정리는 제외)
// 법정동의 경우 마지막 문자가 "동/로/가"로 끝난다.
if(data.bname !== '' && /[동|로|가]$/g.test(data.bname)){
extraRoadAddr += data.bname;
}
// 건물명이 있고, 공동주택일 경우 추가한다.
if(data.buildingName !== '' && data.apartment === 'Y'){
extraRoadAddr += (extraRoadAddr !== '' ? ', ' + data.buildingName : data.buildingName);
}
// 도로명, 지번 조합형 주소가 있을 경우, 괄호까지 추가한 최종 문자열을 만든다.
if(extraRoadAddr !== ''){
extraRoadAddr = ' (' + extraRoadAddr + ')';
}
// 도로명, 지번 주소의 유무에 따라 해당 조합형 주소를 추가한다.
if(fullRoadAddr !== ''){
fullRoadAddr += extraRoadAddr;
}
// 우편번호와 주소 정보를 해당 필드에 넣는다.
document.getElementById('sample4_postcode').value = data.zonecode; //5자리 새우편번호 사용
document.getElementById('sample4_roadAddress').value = fullRoadAddr;
document.getElementById('sample4_jibunAddress').value = data.jibunAddress;
// 사용자가 '선택 안함'을 클릭한 경우, 예상 주소라는 표시를 해준다.
if(data.autoRoadAddress) {
//예상되는 도로명 주소에 조합형 주소를 추가한다.
var expRoadAddr = data.autoRoadAddress + extraRoadAddr;
document.getElementById('guide').innerHTML = '(예상 도로명 주소 : ' + expRoadAddr + ')';
} else if(data.autoJibunAddress) {
var expJibunAddr = data.autoJibunAddress;
document.getElementById('guide').innerHTML = '(예상 지번 주소 : ' + expJibunAddr + ')';
} else {
document.getElementById('guide').innerHTML = '';
}
//우편번호
$("#frm input[name='co_post']").val( data.zonecode );
//도로명주소
$("#frm input[name='co_addr1']").val( fullRoadAddr );
var _url = "https://apis.daum.net/local/geo/addr2coord";
$.ajax({
url: _url,
dataType:"jsonp",
type: "GET",
jsonp: "callback",
data: {
apikey: "34add28fedc1d8e6acb35a1b5a233a47",
q: fullRoadAddr,
output: "json"
},
success: function(data) {
//위도
$("#frm input[name='co_latitude']").val(data['channel']['item'][0]['lat']);
//경도
$("#frm input[name='co_hardness']").val(data['channel']['item'][0]['lng']);
},
error: function(xhr, status, error) {
alert("시스템 에러2\n\n" + xhr.responseText);
},
timeout:60,
async: false
});
}
}).open();
}
</script>