| Server IP : 68.183.124.220 / Your IP : 216.73.217.137 Web Server : Apache/2.4.18 (Ubuntu) System : Linux Sandbox-A 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64 User : gavin ( 1000) PHP Version : 7.0.33-0ubuntu0.16.04.16 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /home/gavin/workspace/readjs/node_modules/download/ |
Upload File : |
# download [](https://travis-ci.org/kevva/download)
> Download and extract files
*See [download-cli](https://github.com/kevva/download-cli) for the command-line version.*
## Install
```
$ npm install --save download
```
## Usage
If you're fetching an archive you can set `extract: true` in options and
it'll extract it for you.
```js
var Download = require('download');
new Download({mode: '755'})
.get('http://example.com/foo.zip')
.get('http://example.com/cat.jpg')
.dest('dest')
.run();
```
## API
### new Download(options)
Creates a new `Download` instance.
#### options
Type: `object`
Options for [`got`](https://github.com/sindresorhus/got) or the underlying [`http`](https://nodejs.org/api/http.html#http_http_request_options_callback)/[`https`](https://nodejs.org/api/https.html#https_https_request_options_callback) request can be specified,
as well as options specific to the `download` module as described below.
##### options.extract
Type: `boolean`
Default: `false`
If set to `true`, try extracting the file using [decompress](https://github.com/kevva/decompress/).
##### options.mode
Type: `string`
Set mode on the downloaded file, i.e `{mode: '755'}`.
##### options.strip
Type: `number`
Default: `0`
Remove leading directory components from extracted files.
### .get(url, [dest])
#### url
Type: `string`
Add a URL to download.
#### dest
Type: `string`
Set an optional destination folder that will take precedence over the one set in
`.dest()`.
### .dest(dir)
#### dir
Type: `string`
Set the destination folder to where your files will be downloaded.
### .rename(name)
#### name
Type: `function` or `string`
Rename your files using [gulp-rename](https://github.com/hparra/gulp-rename).
### .use(plugin)
#### plugin(response, url)
Type: `function`
Add a plugin to the middleware stack.
##### response
The [response object](http://nodejs.org/api/http.html#http_http_incomingmessage).
##### url
The requested URL.
### .run(callback)
#### callback(err, files)
Type: `function`
##### files
Contains an array of vinyl files.
## License
MIT © [Kevin Mårtensson](http://github.com/kevva)