Introducing HTTP types
18th Feb 2020
At Meeshkan, we've recorded millions of HTTP transactions. In doing so, we've noticed that there's no standard format for recording them. Even within our own company (which only has 10 people!) we managed to create competing standards for recording HTTP traffic.
To fix this, we've created an open standard for storing HTTP transactions. With it, we hope to achieve one of two outcomes:
http-typesevolves into an ISO standard, or
- Someone smarter than us will either make something better or point us to a better standard.
In the absence of either of these things for the time being, we're happy to announce
The top-level type in
http-types is the
HttpExhange, an object with two keys:
request: the incoming request, and
response: the outgoing response
The following is an example of a request and response stored in the
http-types client libraries in the most common languages we use at Meeshkan. The current available client libraries are:
- java-http-types: Java library available on Maven Central.
- py-http-types: Python library available on PyPi.
- ts-http-types: TypeScript library available on npm.
If you'd like to contribute a client library, please propose one on our GitHub issues page.
We would love to see more people play with
http-types. While it's far from perfect, it has been relatively stable within Meeshkan and we think it can serve as a good basis for community discussion on how to store web traffic.
If you find it useful or have any questions/comments/criticisms, please let us know in the comment section below.
Don’t miss the next post!
Absolutely no spam. Unsubscribe anytime.