微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript-Angular 2 Http get-从响应中解析JSON对象

我正在尝试对服务器API发出HTTP get请求后返回的JSON对象进行解析.这是对Http的调用

getPayoutReport(param1, param2, param3) {

    //do some hanky panky
    //configure a requestUrl
    return this.http.get(this.requestUrl).map((res:Response)=> res.json());

}

这是接收器方法

this.payoutReportsService.getPayoutReport(this.reservationId, this.productId, this.vendor)
        .subscribe(data => {this.payoutReport = data; console.log(this.payoutReport);});

当我记录this.payoutReport时,我可以在控制台中看到一个JS Object对象.在控制台中检查它时,可以看到它具有我需要的JSON对象的所有属性(基本上这是我需要的对象).除了它是一个JS对象对象,而不是我正在寻找的JSON对象格式.

我试过了:

 return this.http.get(this.requestUrl).map(this.extractData);
 private extractData(res: Response) {
    let body = res.json();
    return body.data || { };
}

但是,res.json().data是未定义的,它返回一个空对象.

帮助赞赏!

解决方法:

您的代码看起来不错.问题是console.log无法显示JSON对象…因此只能在控制台中显示“对象”.请尝试:

console.log(JSON.stringify(this.payoutReport));

这会将值转换为将按预期出现在控制台中的字符串.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐