Skip to content
master
Switch branches/tags
Go to file
Code
This branch is 85 commits ahead of Metrime:master.

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 

gulp-download-stream Build Status Coverage Status Dependency Status

Request wrapper for gulp, allowing you to download files via http/https. The files contents are streamed into a stream of Vinyl files and so download in parallel / concurrently.

Installation

npm install gulp-download-stream --save

Usage

var download = require("gulp-download-stream");

Download single file

To download a single file, pass a string as the first argument to download.

download("http://domain.com/path/to/file.ext")
  .pipe(gulp.dest("downloads/"));

Download multiple files

To download multiple files, pass an array of strings as the first argument to download.

download([
  "http://domain.com/path/to/file1.ext",
  "http://domain.com/path/to/file2.ext"
])
  .pipe(gulp.dest("downloads/"));

The files are downloaded concurrently into stream of Vinyl files, and so are suitable to be piped into other gulp plugins. Each Vinyl file is also itself a stream, and so any downstream plugins must also support stream-based Vinyl files.

Specify local file name

You can specify the local file names of files downloaded. You can do this for one file

download({
  file: "newFileName.ext",
  url: "http://domain.com/path/to/file.ext"
})
  .pipe(gulp.dest("downloads/"));

or for multiple files.

download([{
  file: "newFileName1.ext",
  url: "http://domain.com/path/to/file1.ext"
}, {
  file: "newFileName2.ext",
  url: "http://domain.com/path/to/file2.ext"
}])
  .pipe(gulp.dest("downloads/"));

Pass options to request

You can pass options to request as the second argument. For example, you can request using HTTP authentication.

download("http://domain.com/path/to/file.ext", {
  "auth": {
    "user": "username",
    "pass": "password",
    "sendImmediately": false
  }
})
  .pipe(gulp.dest("downloads/"));

Error handling

For any file, if node can't connect to the server, or the server returns a status code >= 400, then the Vinyl stream will emit an error and the containing gulp task will fail.

About

Gulp plugin for downloading files via http/https.

Resources

License

Packages

No packages published