Angular 6获取方法响应“_isScalar”:false,“source”

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (563)

我试图在html页面上显示json数据。服务器上的数据显示了json数据,但是当我尝试在页面上显示它时,它会给我这些数据

{ “_isScalar”:假的, “源”:{ “_ isScalar”:假的, “源”:{ “_ isScalar”:假的, “源”:{ “_ isScalar”:真正的“价值”:{ “URL”:” https://feeds.citibikenyc.com/stations/stations.json“,”body“:null,”reportProgress“:false,”withCredentials“:false,”responseType“:”json“,”method“:”GET “ “头”:{ “normalizedNames”:{}, “lazyUpdate”:空, “头”:{}}, “PARAMS”:{ “更新”:空, “cloneFrom”:空, “编码器”:{} ,“map”:null},“urlWithParams”:“ https://feeds.citibikenyc.com/stations/stations.json ”},“scheduler”:null},“operator”:{“并发 “:1}},” 运算符 “:{}},” 运算符“:{}}

我获取数据的代码是

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


}
提问于
用户回答回答于

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

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

Readmore

其次,虽然在修复observable-stuff之后不需要解码JSON,但是你JSON.parse()没有解码json JSON.stringifystringify将对象转换为字符串(与您想要的完全相反)。

扫码关注云+社区

领取腾讯云代金券