Javascript 使用google places api请求详细信息
我读了不少书,但还是有点泥泞。我正在尝试构建一个应用程序,它可以在GooglePlaces中获取商业列表,并显示“详细信息”,如地址、评论、图像、位置和描述 我不想执行搜索,因为我已经知道企业名称和位置(用户不会搜索,而是查看导航到的页面) 我一直在关注这一点: 使用此处的代码表单:Javascript 使用google places api请求详细信息,javascript,google-places-api,Javascript,Google Places Api,我读了不少书,但还是有点泥泞。我正在尝试构建一个应用程序,它可以在GooglePlaces中获取商业列表,并显示“详细信息”,如地址、评论、图像、位置和描述 我不想执行搜索,因为我已经知道企业名称和位置(用户不会搜索,而是查看导航到的页面) 我一直在关注这一点: 使用此处的代码表单: 函数初始化(){ var pyrmont=new google.maps.LatLng(50.458447,-3.509552); map=new google.maps.map(document.getElem
函数初始化(){
var pyrmont=new google.maps.LatLng(50.458447,-3.509552);
map=new google.maps.map(document.getElementById('map_canvas'){
mapTypeId:google.maps.mapTypeId.ROADMAP,
中心:皮尔蒙特,
缩放:15
});
var请求={
地点:皮尔蒙特,
半径:5000,
类型:['bar']
};
infowindow=new google.maps.infowindow();
服务=新的google.maps.places.PlacesService(地图);
服务搜索(请求、回调);
}
函数回调(结果、状态){
if(status==google.maps.places.PlacesServiceStatus.OK){
对于(var i=0;i ”+place.formatted\u address+“
”+place.website+“
”+place.rating+“
”+place.formatted\u电话号码);
打开(地图,这个);
});
}
HTML:
地图
执行get请求并将其打印到特定业务列表的html中的最简单方法是什么?我无法帮助您编写javascript代码。但我可以告诉你,你需要查两次你的生意。一次在Places API中获取唯一的PlaceID,然后第二次在Details API中(使用PlaceID)。存储PlaceID,这样就不需要再次执行第一次查找。评论和时间会随着时间的推移而变化
function initialize() {
var pyrmont = new google.maps.LatLng(50.458447,-3.509552);
map = new google.maps.Map(document.getElementById('map_canvas'), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: pyrmont,
zoom: 15
});
var request = {
location: pyrmont,
radius: 5000,
types: ['bar']
};
infowindow = new google.maps.InfoWindow();
service = new google.maps.places.PlacesService(map);
service.search(request, callback);
}
function callback(results, status) {
if (status == google.maps.places.PlacesServiceStatus.OK) {
for (var i = 0; i < results.length; i++) {
createMarker(results[i]);
}
}
}
function createMarker(place) {
var placeLoc = place.geometry.location;
var marker = new google.maps.Marker({
map: map,
position: place.geometry.location
});
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(place.name + "<br />" + place.formatted_address +"<br />" + place.website + "<br />" + place.rating + "<br />" + place.formatted_phone_number);
infowindow.open(map, this);
});
}
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?libraries=places&sensor=false"></script>
</head>
<body>
<div id="content">
<div id="map_canvas">
map
</div>
</div>
</body>