1

好的,所以我浏览了文档,但是我仍然不明白它是如何工作的。如果我想搜索一个地方,我应该使用 HTTP get 请求来返回 json 数据。如何使用 JavaScript 做到这一点?文档只是向我展示了如何像这样构造 HTTP 请求

https://maps.googleapis.com/maps/api/place/nearbysearch/output?parameters

但是我该如何发送这个请求呢?给我指点教程或其他东西会很棒。

4

2 回答 2

2

地方图书馆做所有的工作。您只需发送您需要的字段,然后显示地点详细信息结果

以下代码取自文档,向您展示在哪里添加以实现您的偏好。

var map;
var service;
var infowindow;

function initialize() {
  var pyrmont = new google.maps.LatLng(-33.8665433,151.1956316);

  map = new google.maps.Map(document.getElementById('map'), {
      mapTypeId: google.maps.MapTypeId.ROADMAP,
      center: pyrmont,
      zoom: 15
    });
 //Here you add the fields you require for request for PlacesService() 
  var request = {
    location: pyrmont,
    radius: '500',
    types: ['store']
  };

  service = new google.maps.places.PlacesService(map);
  service.nearbySearch(request, callback);
}
  //Here you display the Place Details Results
function callback(results, status) {
  if (status == google.maps.places.PlacesServiceStatus.OK) {
    for (var i = 0; i < results.length; i++) {
      var place = results[i];
      createMarker(results[i]);
    }
  }
}
于 2012-11-10T22:07:44.600 回答
0

简短版本:编写一个 AJAX 调用来获取数据,然后编写一个回调函数来处理该数据。

长版:

Ajax 请求

Ajax 请求是从网页内发出的 HTTP 请求,因此页面不执行任何导航操作。这些用于执行诸如从 API 获取数据(例如您正在尝试执行的操作)或加载图像、加载其他页面内容等之类的事情。

在您的情况下,您希望对 API URL 执行一个简单的 AJAX 请求,然后对返回的数据执行一些操作。

由于您听起来像是 JavaScript 领域的新手,我强烈建议您使用jQuery JavaScript 库。它使诸如 Ajax 之类的东西在公园里散步。具体来说,您可以使用jQuery.Ajax()函数来构建您的 Web 请求。然后,您指定将 API 数据传递给的回调函数,并对其进行处理。

于 2012-11-10T21:07:12.150 回答