【问题标题】:CORB blocking Google Places API callCORB 阻止 Google Places API 调用
【发布时间】:2018-09-03 10:12:26
【问题描述】:

我正在尝试实现自定义 google 地方自动完成功能,而我的浏览器(Google Chrome 版本 68.0.3440.106)在调用他们的 API 时阻止了我的请求。 Here 写的是这个 API 可以在服务器端和客户端使用。 API 密钥是正确的。我错过了什么? CORB Error

【问题讨论】:

  • 您误读了链接到的页面。该服务可以在客户端和服务器端使用,但您使用它的方式不同。按照上面写着“如果您正在构建客户端应用程序...”的链接,您会到达这里:developers.google.com/maps/documentation/javascript/places
  • @peeebeee 你完全正确,谢谢:)

标签: javascript reactjs google-chrome google-places-api googleplacesautocomplete


【解决方案1】:

CORB 会阻止包含 JSON、HTML 或 XML 的响应。这是一种安全措施。为了达到你想要的不是通过ajax调用。附加地图脚本标签时,您必须在脚本中提及要使用的库,它将被导入到 DOM 中。之后,您必须生成对象并进行过滤。

例如:因此,您无需为查找位置执行 ajax 调用,而是调用构造函数并传递参数。

<script async src="https://maps.googleapis.com/maps/api/js?key=AIzaSyDI2Fgh7xK7JfbUXTVSundJUNfIpHITbTY&libraries=places&callback=operationalMap"></script>
var places = new google.maps.places.PlacesService(map),
    populateMapWithMyLocation = [//array with geolocation lat & lng];

populateMapWithMyLocations.forEach(function(result){
    places.getDetails(result, function(response){                            
        console.log(response)
    })
}); 

P.S.:图片库、附近搜索、文本搜索使用相同的方法。

【讨论】:

    猜你喜欢
    • 2019-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-01
    • 2018-12-02
    • 1970-01-01
    • 1970-01-01
    • 2019-12-12
    相关资源
    最近更新 更多