Angular HTTP 请求获取响应正文

标签 angular http request response

我目前正在尝试弄清楚如何获取响应正文。我可以在浏览器的网络控制台中将其视为字符串数组(这就是我想要得到的),但使用我的代码只会返回一个对象:

this.http.request(req).subscribe(event => {
            if (event.type === HttpEventType.UploadProgress) {
                const percentDone = Math.round(100 * event.loaded / event.total);
                console.log(`File is ${percentDone}% uploaded.`);
            } else if (event instanceof HttpResponse) {
                console.log('File is completely uploaded!');
                console.log('resp: ' + event.body);
            }
          });

这是一个 POST 请求。

这是日志:

resp: [object Object]

最佳答案

需要使用JSON.stringify才能看到实际内容

 console.log('resp: ' + JSON.stringify(event.body));

如果您想从响应中访问特定字段,请使用 JSON.parse 转换为对象

let filename = (JSON.parse(event.body)).fileName;

关于Angular HTTP 请求获取响应正文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51967248/

相关文章:

php - 使用 node.js 向 API 发出请求

node.js - 无法将 s3 对象读取流通过管道传递给 PUT 请求

angular - 自定义指令可以使用 Angular Material 设置输入的占位符吗?

Angular 2 : Avoid DOM render on ngIf second time

Angular Material 多选

http - 如何调试来自 HTTP 调用的 http 响应 header

node.js - 为什么 request.body 未定义?

javascript - 如何让 Jasmine 的 spyOnProperty 工作?

apache - 如何计算 Apache SOLR 中 PER DOCUMENT 一词的每次出现次数?

http - 如何在 golang 中使用 "422 Unprocessable Entity (WebDAV)"或任何其他自定义 http 状态代码