我正在使用web api后端和angular2前端工程。我遇到了显示angular2中的服务器错误的问题。每当服务器发生错误时,都会引发CORS错误。在angular2中显示web api异常
Here is my sample api
public IActionResult Post([FromBody] Visitor model)
{
if (model == null) throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.NoContent)
{
ReasonPhrase = "Missing model in post"
});
_registerService.register(model);
return Ok(model);
}
And here is my angular2 service
addVisit(visit: Visit) {
let siteId = visit.siteId;
let body = JSON.stringify(visit);
let headers = new Headers({ 'Content-Type': 'application/json' });
let options = new RequestOptions({ headers: headers });
return this.authHttp
.post(`${this._visitorsUrl}` + siteId, body, options)
.map(res => {
res.json();
console.log("map: " + JSON.stringify(res.json()));
})
.catch(err => console.log(err));
}
当模型为null,则返回错误502或CORS错误,但在模型不为空,将retrn 200
我的问题是我怎么能显示错误的服务器返回。
我已经做到了,但仍然不能正常工作 handleError(error:any)let errMsg =(error.message)? error.message: error.status? '$ {error.status} - $ {error.statusText}':'服务器错误'; console.error(errMsg); //登录到控制台而不是 return Observable.throw(errMsg); } –
在这里你有另一个基本上做同样的例子,检查getCountriesByRegion(),如果它没有显示它可能是因为别的东西? http://www.waynehong.com/javascript/angular-2-service-example-typescript/ –