http-browserify =============== The [http](http://nodejs.org/docs/v0.4.10/api/all.html#hTTP) module from node.js, but for browsers. When you `require('http')` in [browserify](http://github.com/substack/node-browserify), this module will be loaded. example ======= ````javascript var http = require('http'); http.get({ path : '/beep' }, function (res) { var div = document.getElementById('result'); div.innerHTML += 'GET /beep
'; res.on('data', function (buf) { div.innerHTML += buf; }); res.on('end', function () { div.innerHTML += '
__END__'; }); }); ```` http methods ============ var http = require('http'); var req = http.request(options, cb) ----------------------------------- `options` can have: * method * path * headers={}, as an object mapping key names to string or Array values * host=window.location.host * port=window.location.port The callback will be called with the response object. var req = http.get(options, cb) ------------------------------- A shortcut for ````javascript options.method = 'GET'; var req = http.request(options, cb); req.end(); ```` request methods =============== req.setHeader(key, value) ------------------------- Set an http header. req.getHeader(key) ------------------------- Get an http header. req.removeHeader(key) ------------------------- Remove an http header. req.write(data) --------------- Write some data to the request body. req.end(data) ------------- Close and send the request body, optionally with additional `data` to append. response methods ================ res.getHeader(key) ------------------ Return an http header, if set. `key` is case-insensitive. response attributes =================== * res.statusCode, the numeric http response code * res.headers, an object with all lowercase keys response events --------------- * data * end * error compatibility ============= This module has been tested and works with: * Internet Explorer 5.5, 6, 7, 8, 9 * Firefox 3.5 * Chrome 7.0 * Opera 10.6 * Safari 5.0 Multipart streaming responses are buffered in all versions of Internet Explorer and are somewhat buffered in Opera. In all the other browsers you get a nice unbuffered stream of `"data"` events when you send down a content-type of `multipart/octet-stream` or similar. protip ====== You can do: ````javascript var bundle = browserify({ require : { http : 'http-browserify' } }); ```` in order to map "http-browserify" over `require('http')` in your browserified source.