Skip to content
A slightly higher-level HTTP client for node
JavaScript Makefile
Find file
New pull request
#19 Compare This branch is 103 commits ahead, 2 commits behind leplatrem:master.
Latest commit 43cae55 @springmeyer springmeyer fix syntax
Failed to load latest commit information.
bin Modernizing this module. I think that this will still
.travis.yml fix syntax
LICENSE Adding license
Makefile switch tests to mocha
appveyor.yml Start porting tests to windows
package.json Start porting tests to windows


get is a slightly higher-level HTTP client for nodejs.

Build Status Build status


npm install get

get has no dependencies.

For testing, you'll need make and mocha.

For docs you'll need docco.


  • Redirect following.
  • Convenience functions for downloading and getting data as string.
  • Binary-extension and basic binary detection.
  • Configurable headers


Downloads are objects in get.

var dl = new get({ uri: '' });

However, the function is a self-calling constructor, and thus the new keyword is not necessary:

var dl = get({ uri: '' });

The get constructor can also take a plain string if you don't want to give options.

var dl = get('');

It can also take other options.

var dl = get({
    uri: '',
    max_redirs: 20,

Then it exposes three main methods

dl.asString(function(err, str) {


dl.toDisk('myfile.txt', function(err, filename) {

and finally

dl.asBuffer(function(err, data) {

There's also a lower-level API.

dl.perform(function(err, response) {
    // response is just a response object, just like
    // HTTP request, except handling redirects

If you give node-get an object of settings instead of a string, it accepts

  • uri - the address of the resource
  • headers - to replace its default headers with custom ones
  • max_redirs - the number of redirects to follow before returning an error
  • no_proxy - don't use a HTTP proxy, even if one is in ENV
  • encoding - When calling .guessEncoding(), get will use this instead of the default value


var get = require('get');

get('').asString(function(err, data) {
    if (err) throw err;


  • Guessing encoding wth headers
  • User-customizable encodings


  • Tom MacWright (tmcw)
  • Konstantin Kaefer (kkaefer)
Something went wrong with that request. Please try again.