System.Net.Http.WinHttpHandler 8.0.0

The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org. Prefix Reserved
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package System.Net.Http.WinHttpHandler --version 8.0.0
NuGet\Install-Package System.Net.Http.WinHttpHandler -Version 8.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="System.Net.Http.WinHttpHandler" Version="8.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add System.Net.Http.WinHttpHandler --version 8.0.0
#r "nuget: System.Net.Http.WinHttpHandler, 8.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install System.Net.Http.WinHttpHandler as a Cake Addin
#addin nuget:?package=System.Net.Http.WinHttpHandler&version=8.0.0

// Install System.Net.Http.WinHttpHandler as a Cake Tool
#tool nuget:?package=System.Net.Http.WinHttpHandler&version=8.0.0

About

This package provides an HttpMessageHandler implementation backed by Windows HTTP Services (WinHTTP). While the use of the default HttpClientHandler is highly recommended for applications targeting modern .NET, WinHttpHandler might help migration scenarios by providing an alternative HTTP backend for Windows that works consistently accross .NET Framework and modern .NET.

Key Features

  • Enables sending asynchronous HTTP requests with HttpClient on Windows.
  • Handles authentication and credentials.
  • Exposes a subset of WinHTTP options as C# properties on WinHttpHandler.
  • Use custom proxy.
  • Handle cookies.

How to Use

using System.Net;

using WinHttpHandler handler = new()
{
    ServerCredentials = new NetworkCredential("usr", "pwd")
};

using HttpClient client = new(handler);
using HttpRequestMessage request = new(HttpMethod.Get, "https://httpbin.org/basic-auth/usr/pwd");
using HttpResponseMessage response = await client.SendAsync(request);

Console.WriteLine($"Status: {response.StatusCode}");
if (response.IsSuccessStatusCode)
{
    string content = await response.Content.ReadAsStringAsync();
    Console.WriteLine(content);
}

Main Types

The main types provided by this library are:

  • System.Net.Http.WinHttpHandler

Additional Documentation

Feedback & Contributing

System.Net.Http.WinHttpHandler is released as open source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 is compatible.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .NETFramework 4.6.2

  • .NETStandard 2.0

    • No dependencies.
  • net6.0

    • No dependencies.
  • net7.0

    • No dependencies.
  • net8.0

    • No dependencies.

NuGet packages (79)

Showing the top 5 NuGet packages that depend on System.Net.Http.WinHttpHandler:

Package Downloads
Grpc.Net.Client The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

.NET client for gRPC

Microsoft.Graph.Core The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

Microsoft Graph Core Client Library implements core functionality used by Microsoft Graph client libraries.

Microsoft.Azure.DocumentDB The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

Please note, a newer package, Microsoft.Azure.Cosmos, is available. While this package will continue to receive critical bug fixes, we strongly encourage you to upgrade. See https://aka.ms/migrate-to-cosmos-dotnet-v3 for more details. This client library enables client applications to connect to Azure Cosmos DB via the NoSQL API. Azure Cosmos DB is a globally distributed, multi-model database service.

VaultSharp

The most comprehensive .NET Library for HashiCorp's Vault which is a modern secret management system. * VaultSharp supports all Auth methods, all Secrets Engines and most System Apis supported by Vault. * VaultSharp has first class support for Consul and Enterpise Vault APIs etc. * Enterprise APIs like Control Groups, Transform Secrets Engine & KMIP Secrets Engine etc. This library is built with .NET Standard 2.0, .NET Standard 2.1, 4.6.2, 4.7.2*, 4.8, .NET 6 & .NET 7 and hence is cross-platform across .NET Core 2.x, 3.x, .NET Frameworks 4.x, Xamarin iOS, Android, Mac, UWP etc.

ApacheThrift

C# .NET Core bindings for the Apache Thrift RPC system

GitHub repositories (28)

Showing the top 5 popular GitHub repositories that depend on System.Net.Http.WinHttpHandler:

Repository Stars
PowerShell/PowerShell
PowerShell for every system!
dotnet/runtime
.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
win-acme/win-acme
A simple ACME client for Windows (for use with Let's Encrypt et al.)
grpc/grpc-dotnet
gRPC for .NET
aspnet/KestrelHttpServer
[Archived] A cross platform web server for ASP.NET Core. Project moved to https://github.com/aspnet/AspNetCore
Version Downloads Last updated
9.0.0-preview.1.24080.9 1,057 2/13/2024
8.0.0 241,903 11/14/2023
8.0.0-rc.2.23479.6 4,052 10/10/2023
8.0.0-rc.1.23419.4 3,117 9/12/2023
8.0.0-preview.7.23375.6 4,041 8/8/2023
8.0.0-preview.6.23329.7 538 7/11/2023
8.0.0-preview.5.23280.8 1,643 6/13/2023
8.0.0-preview.4.23259.5 4,281 5/16/2023
8.0.0-preview.3.23174.8 7,025 4/11/2023
8.0.0-preview.2.23128.3 1,479 3/14/2023
8.0.0-preview.1.23110.8 2,959 2/21/2023
7.0.0 2,747,067 11/7/2022
7.0.0-rc.2.22472.3 3,085 10/11/2022
7.0.0-rc.1.22426.10 4,922 9/14/2022
7.0.0-preview.7.22375.6 4,343 8/9/2022
7.0.0-preview.6.22324.4 800 7/12/2022
7.0.0-preview.5.22301.12 1,535 6/14/2022
7.0.0-preview.4.22229.4 4,624 5/10/2022
7.0.0-preview.3.22175.4 1,635 4/13/2022
7.0.0-preview.2.22152.2 5,610 3/14/2022
7.0.0-preview.1.22076.8 1,338 2/17/2022
6.0.2-mauipre.1.22102.15 472 2/15/2022
6.0.2-mauipre.1.22054.8 863 1/19/2022
6.0.1 4,341,520 4/12/2022
6.0.0 2,004,351 11/8/2021
6.0.0-rc.2.21480.5 1,700 10/12/2021
6.0.0-rc.1.21451.13 59,511 9/14/2021
6.0.0-preview.7.21377.19 3,519 8/10/2021
6.0.0-preview.6.21352.12 4,701 7/14/2021
6.0.0-preview.5.21301.5 1,292 6/15/2021
6.0.0-preview.4.21253.7 21,815 5/24/2021
6.0.0-preview.3.21201.4 26,097 4/8/2021
6.0.0-preview.2.21154.6 4,003 3/11/2021
6.0.0-preview.1.21102.12 21,106 2/12/2021
5.0.0 4,012,285 11/9/2020
5.0.0-rc.2.20475.5 3,134 10/13/2020
5.0.0-rc.1.20451.14 1,851 9/14/2020
5.0.0-preview.8.20407.11 1,333 8/25/2020
5.0.0-preview.7.20364.11 4,176 7/21/2020
5.0.0-preview.6.20305.6 1,600 6/25/2020
5.0.0-preview.5.20278.1 1,529 6/10/2020
5.0.0-preview.4.20251.6 4,503 5/18/2020
5.0.0-preview.3.20214.6 1,210 4/23/2020
5.0.0-preview.2.20160.6 1,785 4/2/2020
5.0.0-preview.1.20120.5 2,649 3/16/2020
4.7.2 1,494,587 6/9/2020
4.7.0 6,401,521 12/3/2019
4.7.0-preview3.19551.4 3,675 11/13/2019
4.7.0-preview2.19523.17 1,735 11/1/2019
4.7.0-preview1.19504.10 4,737 10/15/2019
4.6.0 1,157,818 9/23/2019
4.6.0-rc1.19456.4 7,988 9/16/2019
4.6.0-preview9.19421.4 1,495 9/4/2019
4.6.0-preview9.19416.11 797 9/4/2019
4.6.0-preview8.19405.3 2,971 8/13/2019
4.6.0-preview7.19362.9 3,772 7/23/2019
4.6.0-preview6.19303.8 3,899 6/12/2019
4.6.0-preview6.19264.9 804 9/4/2019
4.6.0-preview5.19224.8 1,448 5/6/2019
4.6.0-preview4.19212.13 950 4/18/2019
4.6.0-preview3.19128.7 9,036 3/6/2019
4.6.0-preview.19073.11 2,816 1/29/2019
4.6.0-preview.18571.3 5,095 12/3/2018
4.5.4 2,254,938 5/30/2019
4.5.3 524,057 4/9/2019
4.5.2 4,541,505 1/8/2019
4.5.2-servicing-27114-05 3,053 11/28/2018
4.5.1 412,647 10/1/2018
4.5.0 5,616,486 5/29/2018
4.5.0-rc1 2,456 5/6/2018
4.5.0-preview2-26406-04 2,773 4/10/2018
4.5.0-preview1-26216-02 19,658 2/26/2018
4.4.0 43,516,425 8/11/2017
4.4.0-preview2-25405-01 15,174 6/27/2017
4.4.0-preview1-25305-02 7,645 5/9/2017
4.3.3 7,863 10/9/2018
4.3.2 65,482 9/20/2017
4.3.1 76,500 5/9/2017
4.3.0 156,691 11/15/2016
4.3.0-preview1-24530-04 13,537 10/24/2016
4.0.4 12,962 10/9/2018
4.0.3 4,365 9/20/2017
4.0.2 34,878 5/9/2017
4.0.1 14,779 12/13/2016
4.0.0 15,947,231 6/27/2016
4.0.0-rc2-24027 9,178 5/16/2016
4.0.0-beta-23516 9,357 11/18/2015
4.0.0-beta-23409 14,471 10/15/2015
4.0.0-beta-23225 11,326 9/2/2015
4.0.0-beta-23123 3,687 7/29/2015
4.0.0-beta-23109 8,667 7/27/2015
4.0.0-beta-23019 15,752 6/30/2015
4.0.0-beta-22816 15,887 4/24/2015
4.0.0-beta-22605 4,903 2/13/2015
4.0.0-beta-22416 2,950 1/16/2015
4.0.0-beta-22231 5,648 11/11/2014