在将响应归类为角度分量内的错误或正确数据时,我遇到了问题。
在组件内部,我正在使用subscribe()
this.customerService.resolveAndUpdateIssue(message, this.issue.feedbackDomain.id, true)
.subscribe(
data => {
console.log('Updated');
},
error => {
console.log('Error occured');
}
);
当响应的状态代码不是error
时,我要转到200
。我该怎么办?
我的回应是:
ERROR HttpErrorResponse {headers: HttpHeaders, status: 200, statusText: "OK", url: "http://localhost:9090/yaana/feedback/resolve/issue?feedbackId=100001&resolve=true&message=", ok: false, …}error: {error: SyntaxError: Unexpected token I in JSON at position 0
at JSON.parse (<anonymous>)
at XMLHttp…, text: "Issue resolved succesfully"}error: SyntaxError: Unexpected token I in JSON at position 0
at JSON.parse (<anonymous>)
at XMLHttpRequest.onLoad
实际上,服务器执行的是正确的工作,但是我的http响应是错误响应,我知道我错了,但是如何解决呢? 还有如何从上述回复中获取状态代码。
我当前的代码: 1.服务:
const httpOptionsWithResponse = {
headers: new HttpHeaders({
'Content-Type': 'application/json',
observe: 'response' as 'response'
})
};
myfuntion(listofarguments) {
return this.http.put<any>(updateFeedbackUrl, httpOptionsWithResponse);
}
我的组件是:
this.customerIssueService.resolveAndUpdateIssue(message, this.issue.feedbackDomain.id, true)
.subscribe(
// how to get the status code here?
);
我可以检查data.statuscode还是error.statuscode吗?
如果我错了,请帮助我