我拥有什么以及我想要实现什么的信息
我正在使用 ServiceStack 并启动并运行它以满足我的需要,但是我无法找到如何为未捕获的异常禁用正文/内容。
我让 ServiceStack 处理所有路由。
如果我导航到未映射到 ServiceStack 的路由,我会得到 404(完美)的 StatusCode 和“未找到请求的处理程序:...”的响应正文中的内容
如果我的代码抛出未捕获的异常,ServiceStack 将返回一个相关的 StatusCode,但它也会返回一个带有 ErrorCode 和 Message 的 ResponseStatus。
我关闭了 DebugMode,这会禁用 StackTrace,但是我想完全静音响应的整个正文以处理异常。
我试过的
我尝试了以下响应过滤器:
ResponseFilters.Add((req, res, dto)) =>
{
if (dto is Exception) res.Close();
});
不幸的是,它没有用。
我想避免的
try{
return service.GetResponse();
} catch (Exception) {
return new HttpResult(.....);
}
我的问题
如何禁用所有未捕获异常的响应正文,但仍返回 StatusCode?我希望 null 在正文中返回,并且 StatusCodes 保持不变。
我试图把我的问题说清楚,但如果我在任何方面有点含糊,请问我问题。