Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
A slightly higher-level HTTP client for node
JavaScript Makefile

This branch is 103 commits ahead, 2 commits behind leplatrem:master

Failed to load latest commit information.
bin
lib Add check for content-length header to asString/asBuffer and add test…
test Start porting tests to windows
.npmignore 1.4.0
.travis.yml fix syntax
CHANGELOG.md 1.4.0
LICENSE Adding license
Makefile switch tests to mocha
README.md appveyor badge
appveyor.yml Start porting tests to windows
package.json Start porting tests to windows

README.md

get

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

Build Status Build status

Installation

npm install get

get has no dependencies.

For testing, you'll need make and mocha.

For docs you'll need docco.

Features

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

API

Downloads are objects in get.

var dl = new get({ uri: 'http://google.com/' });

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

var dl = get({ uri: 'http://google.com/' });

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

var dl = get('http://google.com/');

It can also take other options.

var dl = get({
    uri: 'http://google.com/',
    max_redirs: 20,
});

Then it exposes three main methods

dl.asString(function(err, str) {
    console.log(str);
});

and

dl.toDisk('myfile.txt', function(err, filename) {
    console.log(err);
});

and finally

dl.asBuffer(function(err, data) {
    console.log(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

Example

var get = require('get');

get('http://google.com/').asString(function(err, data) {
    if (err) throw err;
    console.log(data);
});

TODO:

  • Guessing encoding wth headers
  • User-customizable encodings

Authors

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