将 Angular (6) 客户端错误发送到 Web API 进行记录

Kyl*_*lla 1 asp.net logging exception asp.net-web-api angular

另一个人在这里问了我确切的问题,但没有答案:Angular 2 Client Side Errors

我想要一种方法(如果可能的话,避免使用额外的第三方框架)将我的客户端 Angular 错误发送到我的后端异常记录器。

我的后端只是一个.NET Web API连接到我们SQL Server数据库的项目。当前,每当发生服务器错误时,我的服务器端错误都会通过调用存储过程控制器记录到数据库中(我使用 KudVenKat 的教程来构建此错误:http ://csharp-video-tutorials.blogspot.com/2012/12/logging -database-part-75.html 的异常)。

有没有办法编写一个 Angular 服务来调用我的 ErrorLogger API 将我的 Angular 错误记录到数据库中?

我想我可能需要调整我的后端记录器控制器,因为它使用 .NET 的System.Exception类,我猜它只适合检测服务器端异常,而不是 Angular 的异常。我可能需要一个完全不同的记录器控制器和数据库表来仅处理客户端错误 - 但如果可能的话,我希望将服务器和客户端错误记录到同一个表中。

知道这一点-我正在尝试做的事情甚至是一个好的方法吗?如果没有,任何人都可以给我一个关于如何记录这些客户端错误的高级描述吗?

Dha*_*agi 5

Angular 提供了全局错误处理服务来处理错误。

我们可以创建自己的自定义错误处理程序服务,该服务扩展了 ErrorHandler 。

在handleError方法中,您可以调用API并将客户端错误传递给服务器

您可以参考https://angular.io/api/core/ErrorHandler