2017-07-23 33 views
0

我想与谷歌地方api工作一个小项目。 我想显示我附近的所有商店。我尝试了下面的AJAX请求,结果没有出现'Access-Control-Allow-Origin'标头错误。经过一番研究后,我明白了为什么会出现这个错误,但我找不到一个可靠的解决方案(我不想安装一个插件,因为它必须在所有计算机上工作)。我得到了“未捕获的SyntaxError:意外的标记:”,因为我得到的响应使用:“未捕获的SyntaxError:意外的标记:”因为我得到的响应使用:而不是=(我认为)。没有'访问控制允许来源'标题与XML(谷歌地方API)

我一直在寻找很多信息,并尝试了很多东西,希望你们能帮助我。

$.ajax({ 
    type: "GET", 
    url: 'https://maps.googleapis.com/maps/api/place/textsearch/xml?', 
    data: { 
     key: "MY KEY", 
     query: "supermarket", 
     location: "x,y", 
     radius: "5000", 
     opennow: "true" 
    } 
}).done(function (data, textStatus, jqXHR) { 
    console.log(data) 
}).fail(function (jqXHR, textStatus, errorThrown) { 
    console.log("fail: " + textStatus); 
}); 

回答

1

未在Google后端服务器上为Places API Web服务设置CORS标头。因此,由于浏览器的同源策略,您将无法从客户端JavaScript代码调用Places API Web服务。

为了在客户端JavaScript上使用Places,您必须使用Google Maps JavaScript API的Places库。场所图书馆附近有文字搜索功能,与相应的网络服务非常相似。

欲了解更多详情,请看看文档:

https://developers.google.com/maps/documentation/javascript/places

希望它能帮助!

+0

我做到了,谢谢你的帮助! – Matstand26

相关问题