rest - 如何记录 ASP.NET Core 输入 JSON 序列化错误

标签 rest asp.net-core json.net asp.net-core-mvc

我们有 ASP.NET Core 应用程序,我们将其用作 REST api。方法使用 [FromBody]MyClass param 作为输入。问题是,如果客户端发送无效的 JSON 字符串,则由于 JSON 序列化错误,input 值将变为 null。有没有办法记录此类错误?

编辑:我正在寻找应用程序范围的解决方案而不是每种方法..

最佳答案

我通过在 Startup.cs 中添加错误处理程序解决了这个问题:

services.AddMvc()
        .AddJsonOptions(options => {
              options.SerializerSettings.Error = (object sender, Newtonsoft.Json.Serialization.ErrorEventArgs args) =>
              {
                    //Log args.ErrorContext.Error details...
              };
        });

关于rest - 如何记录 ASP.NET Core 输入 JSON 序列化错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46948375/

相关文章:

node.js - Azure DevOps REST API - 创建工作项 - "A value is required"

rest - 如何使用 linkedin api 检索 linkedin 用户的 r_basicprofile 权限下列出的所有参数?

resources - RESTful 'PUT' 操作是否应该返回一些内容......

c# - 解析 json 字符串以查找和元素(键/值)

F# WebAPI 默认反序列化产生@符号

java - 创建一个 Restful 方法,该方法接受发布的 xml 并创建一个实体

visual-studio - 出现一个或多个错误,无法启动调试适配器 Visual Studio 2019

docker - AllowSynchronousIO设置为true,但仍会出现异常

c# - Azure CosmosDB Contains 方法不起作用

c# - 读取 DataTable 时出现意外的 JSON 标记。预期的 StartArray,得到 StartObject