我想使用谷歌地方库api中没有地图的textSearch方法。我有经度,纬度,地名的名称,我想搜索。现在我只想将请求发送到谷歌并使用结果。我已包含脚本
<script type="text/javascript" src="//maps.googleapis.com/maps/api/js?&libraries=places"></script>
但我现在必须使用PlaceService,为此我认为我需要在我的应用中包含我不想要的地图。
var service = new google.maps.places.PlacesService(map);
service.textSearch(request, callback);
我只需要用经度,纬度和半径搜索这个地方。我已经尝试通过生成网址并发送ajax请求直接发出请求。但是它返回
No 'Access-Control-Allow-Origin' header is present on the requested resource
如何搜索我的余烬应用中的文字?
答案 0 :(得分:0)
PlaceService constuctor需要一个google.Maps.Map
对象或一个HTML div(它不是一个地图,但它必须有一个显示警告等的地方)。 p>
PlacesService(attrContainer: HTMLDivElement | Map)创建一个新的PlacesService实例,用于在指定的容器中呈现属性。
答案 1 :(得分:0)
使用Places-Library不需要地图。
打印结果(没有地图)时,您必须:
service = new google.maps.places.PlacesService(
document.getElementById('attributions')//attributions-container
);
//send a query
service.textSearch({query:'Stackoverflow'}, function(results, status) {
if (status == google.maps.places.PlacesServiceStatus.OK) {
for (var i = 0; i < results.length; i++) {
var item=document.createElement('li');
item.appendChild(document.createTextNode(results[i].name));
document.getElementById('results').appendChild(item);
}
}
});
<script src="https://maps.googleapis.com/maps/api/js?v=3&libraries=places"></script>
<strong>Search for "Stackoverflow" </strong><br/>
<!-- google-logo -->
<img src="http://developers.google.com/places/documentation/images/powered-by-google-on-white.png"/>
<ul id="results"></ul>
<!-- attributions-container -->
<div id="attributions" style="background:#f1f1f1">
You'll see here the attributions when there are any
</div>
&#13;
{{1}}&#13;