I do random things from time to time.
You'll probably find me programming.
License: MIT License
Even though the library request HTTP/1.1, there are some servers (cough api.github.com) that returns HTTP/1.0. This is immediately "rejected" and infinite loops the event handler:
ClientEvent{ .invalid = Invalid{ .buffer = HTTP/1.0, .message = expected HTTP/1.1, .state = ParserState.initial } }
ClientEvent{ .invalid = Invalid{ .buffer = 403, .message = expected HTTP/1.1, .state = ParserState.initial } }
ClientEvent{ .invalid = Invalid{ .buffer = Forbidden
Cache-Control:, .message = expected HTTP/1.1, .state = ParserState.initial } }
// -- snip --
ClientEvent{ .invalid = Invalid{ .buffer = causes.
, .message = expected HTTP/1.1, .state = ParserState.initial } }
ClientEvent{ .closed = void }
ClientEvent{ .closed = void }
ClientEvent{ .closed = void }
// -- snip --
I think hzzp should support 1.0 parsing since afaik it's a strict subset of 1.1. Plus we should fix the bug where it infinite loops โ maybe invalid should be an error?
Hzzp does not currently support parsing trailing headers on chunked messages. This is part of the HTTP/1.1 and should be parsed.
.header
be emitted after .head_complete
?)(comment from it):
Design criteria:
- the same header field is allowed more than once
- must be able to fetch separate occurrences (important for some headers e.g. Set-Cookie)
- optionally available as comma separated list
- http2 adds flag to headers that they should never be indexed
- header order should be recoverable
Headers are implemented as an array of entries.
An index of field name => array indices is kept.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.