我从他们的一个示例中获得了这段代码,我正在尝试进行逆向工程。
<script type="text/javascript">
function initialize() {
var map = new google.maps.Map(document.getElementById('map_canvas'), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: new google.maps.LatLng(36.018486,-86.787607),
zoom: 15
});
var frontline = new google.maps.LatLng(36.018486,-86.787607);
var request = {
reference: 'CnRkAAAAGnBVNFDeQoOQHzgdOpOqJNV7K9-c5IQrWFUYD9TNhUmz5-aHhfqyKH0zmAcUlkqVCrpaKcV8ZjGQKzB6GXxtzUYcP-muHafGsmW-1CwjTPBCmK43AZpAwW0FRtQDQADj3H2bzwwHVIXlQAiccm7r4xIQmjt_Oqm2FejWpBxLWs3L_RoUbharABi5FMnKnzmRL2TGju6UA4k'
};
var infowindow = new google.maps.InfoWindow();
var service = new google.maps.places.PlacesService(map);
service.getDetails(request, function(place, status) {
if (status == google.maps.places.PlacesServiceStatus.OK) {
var marker = new google.maps.Marker({
map: map,
position: place.geometry.location
});
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(place.name);
infowindow.open(map, this);
});
}
});
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
我无法弄清楚如何找到我所在位置的参考资料。
另外,我如何获得多个值
infowindow.setContent()
答案 0 :(得分:2)
我发现如果你使用textSearch()
方法,它会提供虚幻的引用字符串。我编写了一个客户端脚本,该脚本使用textSearch()
方法为getDetails()
方法here提供引用字符串。
答案 1 :(得分:1)
长加密字符串是Place引用,但它只能用于返回并找到相同的位置。由于它可以稍微改变,因此不应该用于对评级,签到或其他活动进行分组。
来自Places API文档:
http://code.google.com/apis/maps/documentation/places/
“引用包含可用于检索的唯一标记 地方详情请求中有关此地点的其他信息。 您可以存储此令牌并在将来的任何时候使用它来刷新 有关此地方的缓存数据,但不保证相同的标记 在不同的搜索中返回任何给定的地方。“
要在infowindow中添加多个值,只需添加要显示的详细信息即可。像这样:
infowindow.setContent(place.name + address + rating);
答案 2 :(得分:0)
var请求 是在哪里设置位置的数据。看起来是相当加密的。