我遇到了HttpListener的问题,它正常工作(包括返回404),但如果我向输出流写入任何内容(以返回自定义的404 html),即使我将状态码设置为404,Firebug也会显示状态码为200 OK。一旦我删除自定义html,它便会看到预期的404。
在当前情况下,我得到了404,如果取消注释两行,则会显示我想要的HTML,但是状态码是200,而我期望是404:
在当前情况下,我得到了404,如果取消注释两行,则会显示我想要的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;