【问题标题】:How do I stop IIS mangling my error codes for Soap faults如何停止 IIS 对 Soap 错误的错误代码进行修改
【发布时间】:2010-10-27 15:54:31
【问题描述】:

我们向第三方提供 Web 服务,当应用程序级错误发生时,该服务预计会出现 500 错误。发生这种情况时,我们会构建一段带有错误详细信息(事件代码等)的自定义 XML,并将其作为同步响应返回。

但是,似乎 IIS 正在拦截 500 错误并将我们的自定义 XML 替换为“漂亮”的 html 页面。

有谁知道我怎样才能阻止这种情况发生?我们已经尝试在 IIS 中禁用自定义错误,但我们在该设置中得到的只是“发生错误”字符串,现在是我们的自定义 XML。

注意事项:带有我们上周开发的自定义处理程序的 IIS 版本 7 (Windows Server 2008)。

【问题讨论】:

  • 哪个版本的 IIS,以及什么是底层服务堆栈(WCF、ASMX、你上周推出的一些自定义......)

标签: web-services iis soap


【解决方案1】:

答案:是使用HttpResponse.TrySkipIisCustomErrors

这就是我们正在做的事情,像这样......

httpApplication.Response.ContentType = "text/xml";
httpApplication.Response.Write(myCustomErrorString);
httpApplication.Response.StatusCode = (int)HttpStatusCode.InternalServerError;
httpApplication.Response.TrySkipIisCustomErrors = true;

感谢Rick Strahl

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-09-01
    • 1970-01-01
    • 2015-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    相关资源
    最近更新 更多