I am writing a simple c# web server and whenever it gives a status of 404 I always get net::ERR_HTTP_RESPONSE_CODE_FAILURE instead of 404. All The other statuses work fine but this one. I tried looking for spelling mistakes but everything looks correct and also it shows failed to load resource instead of get example.com 404 (Not Found) like on every other website. I am mainly wondering why the response is different when compared to other websites.

Here the example of the response that gives these results:

HTTP/1.1 404 Not Found Date: Server: MADSC Content-Length: 196 Content-Type: text/html 

Here the code that generates the response

 public void WriteToStream(Stream stream) { try { string httpHeaders; if (dataPath.Length > 0) { FileStream fs = new FileStream(dataPath, FileMode.Open, FileAccess.Read); long streamSize = fs.Length; httpHeaders = GenerateHttpHeaders(streamSize); WriteHttpHeadersToStream(httpHeaders, stream); fs.CopyTo(stream); return; } int dataSize = data.Length; httpHeaders = GenerateHttpHeaders(dataSize); WriteHttpHeadersToStream(httpHeaders, stream); } catch (Exception e) { Console.WriteLine("Exception While Writing Response:" + e.ToString()); } } string GenerateHttpHeaders(long dataSize) { //Gets Response Code Discription string responseCodeText = HttpResponseCodes.ResponseCodeText(responseCode); //Creates And Adds Status Line string httpStringData = $"HTTP/1.1 {responseCode} {responseCodeText}\n"; //If Present Adds Headers httpStringData += HeadersToString(); httpStringData += $"Date: \nServer: {server}\n"; httpStringData += $"Content-Length: {dataSize}\nContent-Type: {contentType}\n"; //Adds Data Seperator httpStringData += "\n"; return httpStringData; } 
1

Reset to default

Know someone who can answer? Share a link to this question via email, Twitter, or Facebook.

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy