我需要从谷歌地图加载值。为此,我尝试这样:
public getCountry(lang,lat):Observable<any>{
console.log( lang, lat );
return this.http.get('http://maps.googleapis.com/maps/api/geocode/xml?latlng=40.714224,-73.961452&sensor=false');
}
但没有结果。如何从上面的网址加载数据?
任何人帮助我?
更新
if(navigator){
navigator.geolocation.getCurrentPosition( pos => {
this.latitude = pos.coords.latitude;
this.longitude = pos.coords.longitude;
let data = this.server.getCountry(("latlng="+this.latitude+","), this.longitude);
console.log('data', data );
})
}
答案 0 :(得分:1)
使用此
http://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&sensor=false
而不是
http://maps.googleapis.com/maps/api/geocode/xml?latlng=40.714224,-73.961452&sensor=false
因为您获取的xml数据不是json
答案 1 :(得分:1)
根据其他答案,您可能需要修改调用API的方式,但您还必须订阅您的函数才能访问返回的值。
this.server.getCountry(("latlng="+this.latitude+","), this.longitude)
.subscribe(data => {
console.log(data);
})