生成 http 子状态代码

本文关键字:代码 状态 http 生成 | 更新日期: 2023-09-27 18:35:27

如何在 C# 中生成 http 子状态代码,发生类似 500.13 的错误?下面的代码不起作用。它显示错误500页面而不是错误500.13页面

Response.StatusCode = 500;
Response.SubStatusCode = 13;
Response.End();

这也是web.config

<system.webServer>
   <httpErrors errorMode="Custom" existingResponse="Replace" defaultResponseMode="File">

生成 http 子状态代码

没有"500.13"页面这样的东西?SubStatusCode的文档说

无论是否配置了跟踪,代码都不会作为对请求的最终响应的一部分发送。

看起来子状态代码只出现在服务器日志中。你检查过这些吗?

如果您正在考虑向客户端发送子状态代码,则必须设置一个标头,如下所示:

Response.AddHeader("X-Substatus", 13);

显然,它不会在任何地方显示为 500.13,而是在您生成的消息中。