2016-04-06 93 views
2

問題修改HTTP狀態代碼文本

如何修改狀態代碼文本(描述/標題)?

例如:我想改變200 (Ok)200 (My Custom Text)

應將描述

我想創建自定義狀態碼(未預留)HTTP響應431。我想修改它的文字:

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

我已經試過:

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

response.Headers.Add("Status Code", "431 My custom text"); // This throws error. 
+0

發生了什麼錯誤? – gnalck

+0

'標題名稱格式無效.' –

回答

5

在初始化只需添加ReasonPhrase:

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

它定義的文本使用狀態代碼發送的消息

2

解決此問題的一種方法是跳過驗證添加的標頭。這可以通過TryAddWithoutValidation方法完成。

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

response.Headers.TryAddWithoutValidation ("Status Code", "431 My custom text");