如何使用`rxJS`加载角度值

时间:2018-04-27 09:53:45

标签: angular angular5

我需要从谷歌地图加载值。为此,我尝试这样:

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 );
            })
        }

2 个答案:

答案 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);
  })