Skip to content

Latest commit

History

113 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

http-browserify

The http module from node.js, but for browsers.

When you require('http') in browserify, this module will be loaded.

example

varhttp=require('http');http.get({path : '/beep'},function(res){vardiv=document.getElementById('result');div.innerHTML+='GET /beep<br>';res.on('data',function(buf){div.innerHTML+=buf;});res.on('end',function(){div.innerHTML+='<br>__END__';});});

http methods

var http = require('http');

var req = http.request(opts, cb)

where opts are:

  • opts.method='GET' - http method verb
  • opts.path - path string, example: '/foo/bar?baz=555'
  • opts.headers={} - as an object mapping key names to string or Array values
  • opts.host=window.location.host - http host
  • opts.port=window.location.port - http port
  • opts.responseType - response type to set on the underlying xhr object

The callback will be called with the response object.

var req = http.get(options, cb)

A shortcut for

options.method='GET';varreq=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.

If only 1 piece of data is written, data can be a FormData, Blob, or ArrayBuffer instance. Otherwise, data should be a string or a buffer.

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

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:

varbundle=browserify({require : {http : 'http-browserify'}});

in order to map "http-browserify" over require('http') in your browserified source.

install

With npm do:

npm install http-browserify

license

MIT

About

node's http module, but for the browser

Resources

Code of conduct

Security policy

Stars

245 stars

Watchers

5 watching

Forks

Releases

Packages

Used by

Contributors

Languages