Nathiss.Http
1.0.1
See the version list below for details.
dotnet add package Nathiss.Http --version 1.0.1
NuGet\Install-Package Nathiss.Http -Version 1.0.1
<PackageReference Include="Nathiss.Http" Version="1.0.1" />
paket add Nathiss.Http --version 1.0.1
#r "nuget: Nathiss.Http, 1.0.1"
// Install Nathiss.Http as a Cake Addin #addin nuget:?package=Nathiss.Http&version=1.0.1 // Install Nathiss.Http as a Cake Tool #tool nuget:?package=Nathiss.Http&version=1.0.1
Http
This repository contains the Http project. The Http project contains an implementation of HTTP/1.1 defined by
- RFC 7230 - Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing;
- RFC 7231 - Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content;
- RFC 7232 - Hypertext Transfer Protocol (HTTP/1.1): Conditional Requests;
- RFC 7233 - Hypertext Transfer Protocol (HTTP/1.1): Range Requests;
- RFC 7234 - Hypertext Transfer Protocol (HTTP/1.1): Caching;
- RFC 7235 - Hypertext Transfer Protocol (HTTP/1.1): Authentication;
and an implementation of HTTP/2 defined by
Have in mind that the implementations do NOT implement all HTTP/1.1 and HTTP/2 functionalities. They implement only must-haves and some other features on the fancy site but only the simple ones.
Although HTTP/1.1 and HTTP/2 differ on transport layer, they share the same schematics (methods, header fields, etc.), so that's why I decided to put the implementation in one repository.
Project structure
The implementations of both protocol versions are placed inside Http/ directory. In the project root are placed
HTTP schematics shared by both protocol versions.
Inside Http1.1/ directory are placed schematics for HTTP/1.1.
Inside Http2/ directory are placed schematics for HTTP/2.
HTTP/1.1
Hypertext Transfer Protocol Version 1.1 is defined by RFCs ranging from 7230 to 7235. The protocol was previously defined by RFC 2616, which is now obsolete.
Here in the future I'll put the design considerations and design description.
HTTP/2
Hypertext Transfer Protocol Version 2 is defined by RFC 7540.
Here in the future I'll put the design considerations and design description.
Notes
This repository was designed to be used as a submodule of SharpShare repository, thus is has external dependencies to other components of SharpShare (namely Uri but in the future possibly also others). If you wish to use this repository standalone or as a dependency to other project you need to change paths to the projects that this depends on (see Http.csproj). Take a look at .travis.yml file.
License
This program is distributed under The MIT License. See LICENSE.txt file.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. 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 was computed. 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 was computed. 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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
.NET Core | netcoreapp3.1 is compatible. |
-
.NETCoreApp 3.1
- Nathiss.Uri (>= 1.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.