System.Net.Http.Headers

HttpClient.Headers

Provides access to the collection of HTTP headers associated with an HttpClient instance.

Summary

  • Used to add, remove, or get specific HTTP headers.
  • Typically accessed via the DefaultRequestHeaders property of a HttpClient object.
  • Supports standard headers like User-Agent, Accept, Content-Type, etc.

Properties

DefaultRequestHeaders

Gets the dictionary of HTTP headers that will be sent with every request made using this HttpClient instance.

public HttpRequestHeaders DefaultRequestHeaders { get; }

This property is the primary way to interact with the headers for outgoing requests.

Usage Examples

Adding a custom header:


using System.Net.Http;
using System.Net.Http.Headers;

var client = new HttpClient();
client.DefaultRequestHeaders.Add("X-My-Custom-Header", "MyValue");
var response = await client.GetAsync("https://example.com");

Adding a standard header (e.g., User-Agent):


using System.Net.Http;
using System.Net.Http.Headers;

var client = new HttpClient();
client.DefaultRequestHeaders.UserAgent.ParseAdd("MyAwesomeApp/1.0");
var response = await client.GetAsync("https://example.com");

Removing a header:


using System.Net.Http;
using System.Net.Http.Headers;

var client = new HttpClient();
client.DefaultRequestHeaders.Add("X-ToRemove", "SomeValue");
if (client.DefaultRequestHeaders.Contains("X-ToRemove"))
{
    client.DefaultRequestHeaders.Remove("X-ToRemove");
}
var response = await client.GetAsync("https://example.com");

Related Topics