2

我从他们的一个示例中获得了这串代码,我正在尝试对其进行逆向工程。

<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()
4

3 回答 3

2

我发现如果您使用该textSearch()方法,它会提供虚幻的参考字符串。我编写了一个客户端脚本,它使用该方法在此处为该方法textSearch()提供参考字符串。getDetails()

于 2013-10-30T15:13:20.570 回答
1

长加密字符串是 Place 引用,但它应该只用于返回并找到相同的位置。由于它可能会略有变化,因此不应将其用于对评分、签到或其他活动进行分组。

来自 Places API 文档:

http://code.google.com/apis/maps/documentation/places/

“reference 包含一个唯一令牌,您可以使用它在 Place Details 请求中检索有关此地点的其他信息。您可以存储此令牌并在将来随时使用它来刷新有关此地点的缓存数据,但相同的令牌不是保证在不同搜索中为任何给定地点返回。”

要将多个值添加到信息窗口中,您只需添加要显示的详细信息。像这样:

infowindow.setContent(place.name + address + rating);

于 2011-12-02T20:55:05.390 回答
0

var request 是在哪里设置他们的数据的位置。看起来是相当加密的。

于 2011-12-01T01:22:31.917 回答