Angular httpClient无法获取String对象

时间:2019-01-14 11:34:09

标签: angular typescript rest http httpclient

我正在使用Angular 6从Java REST应用程序中获取字符串,但无法解析/获取字符串

REST API服务工作得很好,它按预期返回了String,但是在浏览器控制台中出现此错误

“ SyntaxError:JSON中意外的令牌X在JSON.parse的位置4处”

我认为这与标题的内容类型有关

我已经尝试更改响应类型,但是那时我无法发送数据。

login(userDTO:UserDTO):Observable<String> {
    let header:HttpHeaders = new HttpHeaders({
      'Content-type' : 'application/json',
    });
    return this.httpClient.post<String>('http://localhost:8080/login',  
userDTO, {headers: header});
  }

编辑: “您从哪里获得String对象?您应该使用字符串文字。– Edric 2分钟”

我从REST Java服务中获取它,该服务返回一个String Java对象

1 个答案:

答案 0 :(得分:1)

您需要期望string对象而不是String对象。 只是改变

return this.httpClient.post<String>('http://localhost:8080/login',
userDTO, {headers: header});

return this.httpClient.post<string>('http://localhost:8080/login',
userDTO, {headers: header});

还期望返回类型为Observable<string>