我正在使用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对象
答案 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>