.NET Standard library with some HTTP related functionality.
Looking for the form URL encoded functionality? It has now moved to a new project ByteDev.FormUrlEncoded which is also on nuget.
ByteDev.Http has been written as a .NET Standard 2.0 library, so you can consume it from a .NET Core or .NET Framework 4.6.1 (or greater) application.
ByteDev.Http is hosted as a package on nuget.org. To install from the Package Manager Console in Visual Studio run:
Install-Package ByteDev.Http
Further details can be found on the nuget page.
Releases follow semantic versioning.
Full details of the release notes can be viewed on GitHub.
Library currently consists of the following main classes:
HttpStatusCodeInfo
MediaType
As well as a few HTTP content specialized classes (located in namespace: ByteDev.Http.Content
):
EmptyContent
FormUrlEncodedContent
JsonContent
XmlContent
Represents a standard HTTP status code with extended information.
Located in namespace: ByteDev.Http
.
HttpStatusCodeInfo statusCode = HttpStatusCodeInfo.CreateFromCode(404);
// statusCode.Code == 404
// statusCode.Name == "Not Found"
// statusCode.Category.Code == 4
// statusCode.Category.Name == "Client Error"
// statusCode.Category.Description == "Request contains bad syntax or cannot be fulfilled."
Represents an internet media type. Also known as a Multipurpose Internet Mail Extensions (MIME) type.
Located in namespace: ByteDev.Http
.
var mediaType = new MediaType("application/vnd.api+json; charset=UTF-8");
// mediaType == "application/vnd.api+json; charset=UTF-8"
// mediaType.Type == "application"
// mediaType.Tree == "vnd"
// mediaType.SubType == "api"
// mediaType.Suffix == "json"
// mediaType.Parameters["charset"] == "UTF-8"
The assembly also contains a number of public extension methods.
To use them reference namespace: ByteDev.Http
.
HttpContent:
- IsFormUrlEncoded
- IsJson
- IsXml
- IsMediaType
- SafeReadAsStringAsync
HttpContentHeaders:
- AddOrUpdate
HttpRequestHeaders:
- AddAcceptJson
- AddAcceptXml
- AddOrUpdate
- AddUserAgent
HttpStatusCode:
- ToReadableString