【问题标题】:Why httpclient in angular 4 is assuming that request am sending json data为什么 Angular 4 中的 httpclient 假设请求正在发送 json 数据
【发布时间】:2017-12-12 22:01:08
【问题描述】:

我正在使用 angular 4 http 客户端到返回文本数据的服务器,因此我做了类似下面的操作

this.http.get('assets/a.txt').map((res:Response) => 
res.text()).subscribe((data: any) => {
  console.log(data.text());
});

我没有告诉它响应是 json 格式的任何地方,但它仍然引发以下错误

SyntaxError: JSON 中位于 Object.parse 位置 0 的意外标记 a () 在 XMLHttpRequest.onLoad

这些人认为响应是 json 格式的依据是什么 :)

【问题讨论】:

标签: json angular typescript angular-httpclient


【解决方案1】:

newHttpClient 的响应默认为 JSON。如果你想得到其他格式的响应,可以通过requestOptionresponseType: 'text'进行设置。以下是有关此实现的更多信息:https://angular.io/guide/http#requesting-non-json-data

一个例子:

this.http.get('assets/a.txt', { responseType: 'text' }).map((res:Response) => 
res).subscribe((data: any) => {
  console.log(data);
});

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2016-11-03
  • 2019-08-06
  • 1970-01-01
  • 2020-10-01
  • 1970-01-01
  • 2017-05-15
  • 2017-05-04
  • 1970-01-01
相关资源
最近更新 更多