cephdon / http Goto Github PK
View Code? Open in Web Editor NEWThis project forked from mjl-/http
http library, limbo, from mercurial
This project forked from mjl-/http
http library, limbo, from mercurial
# status useful, but probably has some buglets lingering in rarely exercised code paths. # intro this is a http library, and simple sample http download client. the library supports both reading & writing requests & responses. some features: - ssl (using inferno's ssl device) - can do gzip/deflate negotiation for requests - supports low-level operations (reading/writing request/response) as well as high-level operations (pass request, get file descriptor to read response from (hiding intricacies of ssl, deflate and/or http chunks) - supports http 1.0/1.1 and versionless "0.9" - can request through proxy # download get the latest version from: http://www.ueber.net/code/r/http # install make sure you have $ROOT set, now "mk install" to compile and install the files. when building from within inferno, insert SYSHOST=Inferno and ROOT= in the mk invocations to override the values in the mkconfig. # licence & author this code is in the public domain, written by mechiel lukkien, reachable at [email protected]. # todo: - split some of mhttp.m into an httpclient library, with higher-level functionality (e.g. following redirects, handling range responses). rewrite hget to use it. - lib: don't reinvent url parsing? but use (one of the two?) url libs in inferno. - lib: rename it from mhttp to http, once i have modified all my local programs to use this new lib (instead of an older version) - lib: use factotum to deal with auth requests? - lib: do ssl better, e.g. with verifying certificates. but that is a more generic inferno problem. same with problem that non-"connection-close" connections hang until timeout (ssl libs read() is like a readn(), and we use bufio so more data is requested then is present). - lib: check ndb to see if a proxy should be used, not per request? that means all programs using http lib get proxy stuff for free, without having to set anything. but cannot be disabled either... - lib: for ssl, use CONNECT to talk to the remote host? - write manual page for library? once it stabilizes - lib: document somewhere that using "accept-encoding: deflate" won't work with some webservers since those webservers return rfc1951 deflate data, instead of rfc1950 zlib. - hget: reinstate -n for allowing redirs, and -R for sending referers.
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.