Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Angular 8中访问JSON响应中的数据?_Json_Angular_Web - Fatal编程技术网

如何在Angular 8中访问JSON响应中的数据?

如何在Angular 8中访问JSON响应中的数据?,json,angular,web,Json,Angular,Web,我正在从web服务器获取数据,并尝试访问JSON对象中的数据。我在访问它时遇到一些问题 JSON如下所示: { "faults": [ { "FaultCodeType": "X", "ErrorType": "System", "Description": "Response failed for reason 1" }, { "FaultCodeType": "Y",

我正在从web服务器获取数据,并尝试访问JSON对象中的数据。我在访问它时遇到一些问题

JSON如下所示:

{
     "faults": [
      {
        "FaultCodeType": "X",
        "ErrorType": "System",
        "Description": "Response failed for reason 1"
      },
      {
        "FaultCodeType": "Y",
        "ErrorType": "System",
        "Description": "Response failed for reason 2"
      }
     ],
     "responseInfo": {},
     "responseInfo2": {},
     "responseInfo3": {}
}
我应该使用JSON.parse吗

JSON.stringify

我的方法是:

loadData(dataPassed) {
  this.angularService.searchWithData(dataPassed).subscribe(
data => {
const fault = data[0];
const fault2 = data[1];
console.log('Data is here = ' + data); // returns the JSON
console.log('Request = ' + JSON.stringify(data)); // shows the JSON
console.log(fault);  // undefined
console.log(fault2); // undefined
  }
}

但它不起作用,任何帮助都将不胜感激

由于以下原因,您将无法定义

const fault = data[0];
const fault2 = data[1];
由于数据不是数组对象,因此错误[0]不存在

试一试


要访问
故障

faults.forEach(f -> {
     console.log('f.FaultCodeType', f.FaultCodeType);
     console.log('f.ErrorType', f.ErrorType);
     console.log('f.Description', f.Description);
})
const faults=data.faults

然后您可以迭代这些
故障

faults.forEach(f -> {
     console.log('f.FaultCodeType', f.FaultCodeType);
     console.log('f.ErrorType', f.ErrorType);
     console.log('f.Description', f.Description);
})
要访问
响应信息
响应信息2
响应信息3

console.log('data.responseInfo', data.responseInfo);
console.log('data.responseInfo2', data.responseInfo2);
console.log('data.responseInfo3', data.responseInfo3);

请告诉我您面临的错误是什么?当I console.log()返回时,数据是未定义的。如果I console.log是整个响应(数据),那么我得到的只是object object。您试图在哪里显示数据/或运行console.logI更新了原始帖子