1

value = blank/missing のヘッダーを追加することは可能ですか?

HttpRequestMessage.Headers.Add("header-name", string.Empty);

System.FormatException was unhandled by user code
  HResult=-2146233033
  Message=The format of value '' is invalid.
  Source=System.Net.Http
  StackTrace:
       at System.Net.Http.Headers.HttpHeaderParser.ParseValue(String value, Object storeValue, Int32& index)
       at System.Net.Http.Headers.HttpHeaders.ParseAndAddValue(String name, HeaderStoreItemInfo info, String value)
       at System.Net.Http.Headers.HttpHeaders.Add(String name, String value)
       at 
4

3 に答える 3

1

それはノーでしょう。これは、 HTTP プロトコル標準に反します。

4.2 メッセージヘッダー

general-header (セクション 4.5)、request-header (セクション 5.3)、response-header (セクション 6.2)、および entity-header (セクション 7.1) フィールドを含む HTTP ヘッダー フィールドは、セクションで指定されているものと同じ一般的な形式に従います。 RFC 822 [9] の 3.1。各ヘッダー フィールドは、名前の後にコロン (":") とフィールド値が続く形式で構成されます。

于 2014-02-19T05:46:19.713 に答える
1

値のないクレイジーなヘッダーを送信する場合は、TryAddWithoutValidation()メソッドを使用します。ここに例を示します。

HttpRequestMessage request = new HttpRequestMessage();
request.RequestUri = new Uri("http://kiewic.com");
var result = request.Headers.TryAddWithoutValidation("Authorization", string.Empty);

HttpClient client = new HttpClient();
var response = await client.SendAsync(request);

そして、サーバーがリクエストを気に入るように指を交差させます。

于 2014-11-14T01:21:52.877 に答える