Angular6获取方法响应“ _isScalar”:false,“源”

时间:2018-08-31 00:03:49

标签: angular

我正在尝试在html页面上显示json数据。服务器上的数据向我显示json数据,但是当我尝试在页面上显示它时,它将为我提供此数据

  

{“ _ isScalar”:false,“源”:{“ _ isScalar”:false,“源”:{“ _ isScalar”:false,“源”:{“ _ isScalar”:true,“值”:{“ url “:” {https://feeds.citibikenyc.com/stations/stations.json“,” body“:null,” reportProgress“:false,” withCredentials“:false,” responseType“:” json“,” method“:” GET“,” headers“:{” normalizedNames“:{},” lazyUpdate“:null,” headers“:{}},” params“:{” updates“:null,” cloneFrom“:null,” encoder“:{},” map“:null} ,“ urlWithParams”:“ https://feeds.citibikenyc.com/stations/stations.json”},“ scheduler”:null},“ operator”:{“ concurrent”:1}},“ operator”:{}},“ operator”:{}} < / p>

我获取数据的代码是

import { HttpClient} from '@angular/common/http';
import { Injectable } from '@angular/core';

@Injectable()
export class GetdataService {
posts : any;
readonly ROOT_URL ="https://feeds.citibikenyc.com/stations/stations.json";
constructor(private http: HttpClient ) { }

getPosts()
{

this.posts = this.http.get(this.ROOT_URL );

return JSON.stringify(this.posts);
}


}

1 个答案:

答案 0 :(得分:3)

this.http.get()不返回数据,而是可观察到的,必须订阅:

getPosts() {
  this.http.get(this.ROOT_URL)
    .subscribe((data) => {
        //DO STUFF HERE
    });
}

Readmore

第二,虽然在修复可观察的东西后不需要解码JSON,但您可以使用JSON.parse()而非JSON.stringify来解码JSON。 stringify将对象转换为字符串(与您想要的完全相反)。