【问题标题】:Parsing result from GET request in Angular在 Angular 中解析 GET 请求的结果
【发布时间】:2018-01-06 01:25:49
【问题描述】:

我现在正在处理一个 GET 请求,当我将其打印出来时,结果显示为 [Object object]。我正在尝试将该对象解析为我创建的用户类,但没有运气。如果有人能提供建议,那就太好了。我的尝试如下。

 findUser() {
    const id = this.getCurrentUser().id;
    return this.http.get('http://localhost:3000/users/' + id)
      .map(res => res.json())
      .subscribe((user: User) => {
        console.log("User retrieved is " + <User>user);
        this.user = JSON.stringify(user);
      });
  }

【问题讨论】:

  • 您是否从 API 获得正确响应?如果是,您应该自动获取解析后的 JSON 响应。

标签: json angular get


【解决方案1】:

http get 方法中的 map 函数会为您解析响应。

根据代码,.subscribe((user: User) 已经将响应对象转换为 User 对象,因此无需在控制台日志中再次转换它。

this.user = JSON.stringify(user); 无法解决问题,因为JSON.stringify 方法会将JSON 对象转换为字符串化格式。

【讨论】:

  • 响应是正确的,但没有任何转换,我不断得到 [Object object]。它没有正确转换为我的用户对象。
  • 在这种情况下尝试使用console.log("User retrieved is ", user);
  • 做到了!感谢您的帮助。
猜你喜欢
  • 1970-01-01
  • 2018-12-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-16
相关资源
最近更新 更多