1

如何在 WEB API 的响应正文中跨应用程序添加未处理的异常。如果没有例外,则需要将成功消息发送到所有响应的响应正文......需要帮助来实现这一点。

4

1 回答 1

2

你需要两件事。为了处理异常,您需要在 HttpConfiguration 对象中设置 IncludeDetailErrorPolicy,

您可以将错误策略首选项配置为 IncludeErrorDetailPolicy 属性中配置对象 (HttpConfiguration) 的一部分。这只是一个指示 Web API 如何处理异常的枚举。

此枚举的可能值为,

默认值:如果您使用 ASP.NET 作为主机或使用 LocalOnly 作为自主机,它将使用 customErrors 配置设置。LocalOnly:仅包含本地请求的错误详细信息 Always:始终包含错误详细信息 Never:从不包含错误详细信息

当异常发生时,Web API 将检查此设置的值,以在响应消息中包含有关异常的详细信息。例如,如果启用 Always,Web API 会将异常详细信息序列化为您作为响应获得的消息的一部分。

成功消息没有多大意义,因为您已经有了响应状态代码。状态码等于 OK 表示一切正常。如果您仍想添加其他消息,请使用检查响应状态代码的 HttpMessageHandler。如果状态码正常,则添加消息。但是,响应正文已在此时设置,因此您将无法修改它。您也许可以将消息添加为标题。

于 2013-03-21T13:05:08.007 回答