This is a
playground to test code. It runs a full
Node.js environment and already has all of
npm’s 400,000 packages pre-installed, including
http2-testpage with all
npm packages installed. Try it out:
http2-testpage lists no main file and has no index.js, so it can't be directly required. If this is a mistake, please let us know. It may however contain internal files that you can require manually:
This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.
This project aims to provide a server that can be used to test client side HTTP/2 implementations.
One of the most important aspects is handling protocol errors, since it's something that's usually hard to test without custom server side software.
The goal is to be accessible to as many different clients as possible. Currently, you will need a client software with the following capabilities:
This list will probably gain more items in the future. For example, tests will need a way to tell client software what to do next. The simplest solution is to send HTML code that contains links to images or iframes. This will require the client to be able to parse HTML and initiate requests for subresources.
The only supported version of the standard is the draft-ietf-httpbis-http2-06 draft.
You will need at least node version 0.10.0. Install http2-testpage using npm (the node package manager):
$ npm install -g http2-testpage
$ http2-testpage -h Usage: http2-testpage [options] Options: -h, --help output usage information -V, --version output the version number -l, --log [level] Logging level [info] -k, --key [path] Private key to use [http2-testpage/keys/localhost.key] -c, --crt [path] Certificate to use [http2-testpage/keys/localhost.crt] -p, --port [port] Port to listen on 
Point your client software to the
https://localhost:8080/testname URL, where
testname is one of
the directory names in the
test directory. It will create a server on a dedicated port and
redirect the client to that port using a 307 Temporary Redirect.