为什么会抛出错误?
deleteUser(userId: string) {
this.dataService.deleteUser(userId).subscribe((response: string) => {
console.log(response);
});
}
"SyntaxError: Unexpected token f in JSON at position 1 at JSON.parse () at XMLHttpRequest.onLoad (https://localhost:5001/vendor.js:34968:51) at ZoneDelegate.invokeTask (https://localhost:5001/polyfills.js:412:35) at Object.onInvokeTask (https://localhost:5001/vendor.js:72879:33) at ZoneDelegate.invokeTask (https://localhost:5001/polyfills.js:411:40) at Zone.runTask (https://localhost:5001/polyfills.js:180:51) at ZoneTask.invokeTask [as invoke] (https://localhost:5001/polyfills.js:493:38) at invokeTask (https://localhost:5001/polyfills.js:1634:18) at XMLHttpRequest.globalZoneAwareCallback (https://localhost:5001/polyfills.js:1671:25)"
响应是纯字符串值,状态为 200。
我错过了什么?
最佳答案
使用正确的响应类型(默认为 JSON)更新 dataService 中的 deleteUser 方法。另外,我假设这就是您使用 httpClient 的地方。
httpClient.get('your_endpoint', { responseType: 'text' }).subscribe(result => {
console.log(result);
});
您返回的是文本,而不是 JSON。
关于json - Angular 9 HttpErrorResponse 'JSON.Parse error' 响应正常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63230566/