【问题标题】:Error in Google Places API requestGoogle Places API 请求中的错误
【发布时间】:2015-09-12 00:48:33
【问题描述】:

我正在使用 jQuery 向 Google Places API 发出获取请求,并且我得到了成功的响应,但数据没有显示在我的页面上。这是我用来发送请求的代码,我附上了 2 张关于开发工具向我展示的图片。

$('#button').click(function () {
    $.ajax({
        type: 'GET',
        dataType: 'jsonp',
        url: "https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJh4vtq-kQsYkRET-Imf6RsuA&key=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
        success: function (data) {
            $("#over_map").text(data.formatted_address);
        }
    });
});

开发工具截图:

【问题讨论】:

  • 你试过dataType: 'json' 吗?

标签: javascript jquery api get google-api


【解决方案1】:

Google Places place details API page 看来,服务器不支持 JSONP。此外,API 页面有这样的说法:

Google Places API 网络服务用于服务器应用程序。如果您正在构建客户端应用程序,请查看 Google Places API for AndroidPlaces Library in the Google Maps JavaScript API

这让我相信可能不会设置 CORS 标头,因为 Google 希望您在服务器端使用此 API,而不是在客户端。

我的建议是尝试在您的 AJAX 请求中将 dataType: 'jsonp', 更改为 dataType: 'json',,如果这导致浏览器抛出原始错误,那么您将需要制定一个服务器端解决方案而不是您当前的解决方案客户端。

【讨论】:

  • 我在尝试使用 AJAX / JSON 时也遇到了来源错误。服务器端解决方案会是什么样子?
  • @user2586455 任何服务器端语言都应该能够正常执行请求而无需大惊小怪。
猜你喜欢
  • 1970-01-01
  • 2012-09-20
  • 1970-01-01
  • 2013-06-21
  • 1970-01-01
  • 1970-01-01
  • 2016-11-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多