问题遇到的现象和发生背景
在azure创建webapp 通过vscode 链接azure 再用vscode编辑webapp
我想做一个地图类的webapp 地图api用的kakaoapi 想把地图中所有药店类的地方做一个标记点
药店类的openapi也有 结合到一起就不行了
用代码块功能插入代码,请勿粘贴截图
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>Kakao 지도 시작하기</title>
</head>
<body>
<div id="map" style="width:500%;height:100vh;"></div>
<script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey=8d41e4ac5151c7737e6a4fb12557f127"></script>
<script>
var xhr = new XMLHttpRequest();
var url = 'http://apis.data.go.kr/B551182/pharmacyInfoService/getParmacyBasisList'; /*URL*/
var queryParams = '?' + encodeURIComponent('serviceKey') + '='+'PT%2F%2BFFEwk%2Fv1euX9M6yUDQ5ywqaxO1cFQzzee1GwE%2F9jRVYARG8IaZxmT8PQ1r6D12e3BurU7Mad9vM9BfgaLw%3D%3D'; /*Service Key*/
queryParams += '&' + encodeURIComponent('pageNo') + '=' + encodeURIComponent('1'); /**/
queryParams += '&' + encodeURIComponent('numOfRows') + '=' + encodeURIComponent('10'); /**/
queryParams += '&' + encodeURIComponent('sidoCd') + '=' + encodeURIComponent('110000'); /**/
queryParams += '&' + encodeURIComponent('sgguCd') + '=' + encodeURIComponent('110019'); /**/
queryParams += '&' + encodeURIComponent('emdongNm') + '=' + encodeURIComponent('신내동'); /**/
queryParams += '&' + encodeURIComponent('yadmNm') + '=' + encodeURIComponent('온누리건강'); /**/
queryParams += '&' + encodeURIComponent('xPos') + '=' + encodeURIComponent('127.0965441345503'); /**/
queryParams += '&' + encodeURIComponent('yPos') + '=' + encodeURIComponent('37.60765568913871'); /**/
queryParams += '&' + encodeURIComponent('radius') + '=' + encodeURIComponent('3000'); /**/
xhr.open('GET', url + queryParams);
xhr.onreadystatechange = function () {
if (this.readyState == 4) {
alert('Status: '+this.status+'nHeaders: '+JSON.stringify(this.getAllResponseHeaders())+'nBody: '+this.responseText);
}
};
xhr.send('');
var mapContainer = document.getElementById("map"), // 지도를 표시할 div
mapOption = {
center: new kakao.maps.LatLng(37.659701, 126.773286), // 지도의 중심좌표
level: 3, // 지도의 확대 레벨
mapTypeId : kakao.maps.MapTypeId.ROADMAP, // 지도종류
};
// 지도를 생성한다
var map = new kakao.maps.Map(mapContainer, mapOption);
var clusterer = new kakao.maps.MarkerClusterer({
map: map, // 마커들을 클러스터로 관리하고 표시할 지도 객체
averageCenter: true, // 클러스터에 포함된 마커들의 평균 위치를 클러스터 마커 위치로 설정
minLevel: 10 // 클러스터 할 최소 지도 레벨
});
//인포윈도우를 표시하는 클로저를 만드는 함수입니다.
function makeOverListener(map, marker, Infowindow) {
return function() {
Infowindow.open(map, marker);
};
}
// 인포윈도우를 닫는 클로저를 만드는 함수입니다
function makeOutListener(Infowindow) {
return function() {
infowindow.close();
};
}
fetch(url)
.then((res) => res.json())
.then((myJson) => {
var markers = [];
const stores = myJson.stores;
for (var i = 0; i < stores.length; i++){
//지도에 마커 생성,표시
var marker = new kakao.maps.Marker({
Position: new kakao.maps.LatLng(
stores[i]["lat"],
stores[i]["lng"]
), //마커 좌표
});
//인포윈도우 생성
var infowindow = new kakao.maps.InfoWindow({
content : stores[i]["name"],
});
markers.push(marker);
kakao.maps.event.addListener(
marker,
"mouseover",
makeOverListener(map, marker, infowindow)
);
kakao.maps.event.addListener(
marker,
"mouseout",
makeOverListener(infowindow)
);
}
clusterer.addMarkers(markers);
});
</script>
</body>
</html>
运行结果及报错内容
运行结果只有一个普通的地图 地图上的要点并没有标记点