Modify the Http Status Code text
Asked Answered
N

3

3

Question

How to modify the Status Code text (description/title)?

Example

For example: I want to change 200 (Ok) to 200 (My Custom Text)

Desciption

I want to create a HTTP response with custom Status Code (unreserved) 431. I want to modify it's text:

  • 200 (OK)
  • 400 (Bad Request)
  • 431 (My message here)

I've tried:

var response = new HttpResponseMessage() 
{
    StatusCode = (HttpStatusCode) 431,
};

response.Headers.Add("Status Code", "431 My custom text"); // This throws error.
Nur answered 6/4, 2016 at 21:29 Comment(2)
What error is thrown?Spacesuit
The header name format is invalid.Nur
G
8

Just add ReasonPhrase in initializer :

        var response = new HttpResponseMessage()
        {
            StatusCode = (HttpStatusCode)431,
            ReasonPhrase = "your text"
        };

It defines text of the message that send with the status code

Gametophore answered 6/4, 2016 at 21:35 Comment(0)
S
2

One way to solve this issue is to skip the validation of the header you add. This can be done with the TryAddWithoutValidation method.

var response = new HttpResponseMessage() 
{
    StatusCode = (HttpStatusCode) 431,
};

response.Headers.TryAddWithoutValidation ("Status Code", "431 My custom text");
Spacesuit answered 6/4, 2016 at 21:38 Comment(0)
M
0

If you're returning just a status code and a message, you can do something like:

return this.Ok("My Custom Text");

or

return this.Unauthorized("Invalid Pin");

This will change the responseText.

Mean answered 6/8, 2024 at 11:48 Comment(0)

© 2022 - 2025 — McMap. All rights reserved.