Skip to content
This repository has been archived by the owner on Feb 20, 2021. It is now read-only.

microsoftarchive/http2-katana

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#http2-katana

This is an implementation of Hypertext Transfer Protocol version 2 in C# with OWIN Katana. Be aware this code is released as a prototype of static files server, test client and Bing proxy demo server. This should only be used for interoperability testing.

##Development Status This prototype supports h2-12 (http://tools.ietf.org/html/draft-ietf-httpbis-http2-12) and headers compression 07 (http://tools.ietf.org/html/draft-ietf-httpbis-header-compression-07).

HTTP/2 Features Support
ALPN Yes
Upgrade Yes
SNI Yes
NPN No
Direct No
ALTSVC No

##Public Test Server The following endpoints are available to try out http2-katana implementation:

##Build instructions: Build Http2.Katana solution. All executables (static files server, test client, Bing proxy) and required libraries will be under Drop direcrtory. You can use Http2.Owin.StaticFiles.Sample.exe to start static files server or alternatively install server as windows service using Http2.Owin.Service.Sample.exe. Also use Http2.Owin.BingProxy.Sample.exe to run Bing proxy demo server.

##Endpoints Configuration All of servers under Drop folder could be configured with *.config files. The follwoing options are avaliable:

Key Description
useSecurePort use secure adress or not
secureAddress address for https urls (ALPN)
unsecureAddress address for http urls (Upgrade)
handshakeOptions value of 'handshake' or 'no-handshake' (response by http/1.1)
server-name used by SNI to validate host name
securePort port number for secureAddress
unsecurePort port number for unsecureAddress

##Tests Running It's easy. Just install XUnit framework extension for Visual Studio and run tests from Test Explorer window.