我遇到了 HttpListener 的问题,它工作得很好(包括返回 404),但是如果我向输出流写入任何内容(返回 404 的自定义 html),那么即使我设置状态代码 = 404,萤火虫也会显示状态 200 ok,一旦我删除了自定义 html,它确实会按预期看到 404。
正如我得到 404 一样,如果我取消注释 2 条注释行,我会得到我想要显示的 HTML,但是 200 而我期望 404:
//var buffer = System.Text.Encoding.UTF8.GetBytes("<html><head></head><body><h1>404 not found</h1></body></html>");
//ctx.Response.OutputStream.Write(buffer, 0, buffer.Length);
ctx.Response.StatusCode = 404;