我需要显示不同的自定义错误页面,具体取决于错误文本/原因短语,而不仅仅是状态码。
例如,如果我有以下代码:
if (id == 1)
{
throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.Forbidden) {ReasonPhrase = "foo"} );
}
throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.Forbidden) { ReasonPhrase = "bar" });
我希望IIS为403 foo
返回一种自定义页面,为403 bar
返回另一种自定义页面。这是因为我需要自定义我们没有源代码的请求拦截器返回的错误。
理想情况下,除了<httpErrors>
中的状态代码外,我们还可以指定一个ReasonPhrase正则表达式。
如果IIS中没有内置方法,我可能会尝试制作另一个请求拦截器并将其链接在前面,以便它可以修改响应并提供自定义错误页面。