如果响应正文中包含一些错误代码,我如何修改此promise代码以抛出错误?
return this.httpService.post('/create', data)
.toPromise()
.then(response => response.json() as CreatedResponse)
.catch(this.handleCreateError);这是我需要修改的.then(response => response.json() as CreatedResponse),以便在response.json().hasError为真时抛出错误。否则,承诺应该就会解决。
发布于 2017-07-12 14:04:09
您可以在then回调中抛出任何错误。因此,在您的情况下,它可能是:
return this.httpService.post('/create', data)
.toPromise()
.then(response => response.json() as CreatedResponse)
.then(json => {
if (json.hasError) {
throw Error('Response is not valid');
} else {
return json;
}
})
.catch(this.handleCreateError);https://stackoverflow.com/questions/45049476
复制相似问题