从 GraphQL 错误消息中删除异常类型

时间:2021-07-15 10:37:17

标签: .net exception graphql

我正在尝试在 .NET Core 中为 GraphQL 实现错误处理中间件,以捕获所有未处理的异常并以结构化和统一的方式对其进行格式化。

按照文档,我创建了一个中间件类,实现了“IFieldMiddleware”,效果很好。问题是,错误消息包含异常类型名称。请参阅下方 GraphQL 响应中的错误消息。

是否可以省略类型名称而只获取异常消息?

graph ql response

中间件代码

public class UnhandledExceptionMiddleware : IFieldMiddleware
    {
        public async Task<object> Resolve(IResolveFieldContext context, FieldMiddlewareDelegate next)
        {
            Object result = null;
            try
            {
                return await next(context);
            }
            catch (Exception e)
            {
                context.Errors.Add(new UnhandledError(e.Message, e.InnerException));
                return default;
            }
        }
    }

0 个答案:

没有答案