【发布时间】:2018-01-29 11:13:41
【问题描述】:
我构建了 angular 4 和 asp.net 项目。 我试图弄清楚为什么我仍然在控制台中看到错误,即使我做了错误处理。 这是我在插入数据库中不存在的名称时在控制台中遇到的错误。
GET http://localhost:53842/api/queriestest/asdasdas 500 (Internal Server Error)
组件中的过滤功能
filter(name: string) {
console.log(name);
this.serviceQueries.filterQueries(name)
.subscribe(
(data: Response) => {
this.listQueries = data.json();
},
(error: AppError) => {
if (error instanceof BadInputError) {
alert('this post has already has been deleted')
}
else {
alert('An unexpected error occured');
}
}
);
ServicesQueries.ts(BadInputError 和 AppError 是我自己构建的类)
filterQueries(name: string) {
console.log(`my name is ${name}`);
return this.http.get('http://localhost:53842/api/queriestest/' + name)
.catch((error: Response) => {
console.log("ee");
if (error.status === 500) {
return Observable.throw(new BadInputError(error.json()));
}
return Observable.throw(new AppError(error.json()));
});
}
QueryTestController.ts
[HttpGet("{name}")]
public IActionResult filterPerson(string name)
{
List<Employee> ilIst = new List<Employee>();
Employee Emp;
Emp = _context.Employee.Where(x => x.EmployeeName == name).First();
ilIst.Add(Emp);
return Json(ilIst);
}
我的问题是为什么我仍然在控制台中看到我不想以这种方式向用户显示的错误,即使我处理了它。这是为什么呢?
【问题讨论】: