Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

aria2

Package Overview
Dependencies
Maintainers
1
Versions
23
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

aria2

Library and cli for aria2, "The next generation download utility."

  • 3.0.1
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
300
increased by1.35%
Maintainers
1
Weekly downloads
 
Created
Source

aria2.js

JavaScript (Node.js and browsers) library and cli for aria2, "The next generation download utility."

license

Build Status styled with prettier

Dependency Status devDependency Status

Introduction

aria2.js controls aria2 via its JSON-RPC interface and features

  • Node.js and browsers support
  • multiple transports
  • callback API
  • promise API
  • light (1.5KB minified and gzipped)

Getting started

npm install aria2


var Aria2 = require("aria2");

or

<script src="node_modules/aria2/bundle.js"></script>
var Aria2 = window.Aria2;

Start aria2c in daemon mode with

aria2c --enable-rpc --rpc-listen-all=true --rpc-allow-origin-all

Usage

var aria2 = new Aria2([options]);

default options match aria2c defaults and are

{
  host: 'localhost',
  port: 6800,
  secure: false,
  secret: '',
  path: '/jsonrpc'
}

secret is optional and refers to --rpc-secret.

If the WebSocket is open (via the open method) aria2.js will use the WebSocket transport, otherwise the HTTP transport.

For HTTP, aria2.js makes use of the new fetch standard, you might need a polyfill if you want to support older browsers.

open

aria2.open() opens the WebSocket connection.

aria2.onopen = function() {
  console.log("aria2 open");
};

aria2.open([cb]);
// or
aria2.open().then(fn);

close

aria2.close() closes the WebSocket connection.

aria2.onclose = function() {
  console.log("aria2 closed!");
};

aria2.close([cb]); // callback style
// or
aria2.close().then(fn); // promise style

onsend and onmessage

aria2.onsend() is called for every message sent. aria2.onmessage() is called for every message received.

aria2.onsend = function(m) {
  console.log("aria2 OUT", m);
};
aria2.onmessage = function(m) {
  console.log("aria2 IN", m);
};

aria2 methods

For a complete listing see aria2 methods.

If you passed the secret option to aria2.js, it will be automatically added to every request so there is no need to include it.

For every aria2 methods you can use

callback style
aria2.getVersion([params,] function(err, res) {
  console.log(err || res);
});

or

aria2.send('getVersion', [params,] function(err, res) {
  console.log(err || res);
});
promise style
aria2.getVersion([params]).then(fn);

or

aria2.send("getVersion", [params]).then(fn);

aria2 events

For a complete listing see aria2 notifications.

For every notifications you can bind a function.

aria2.onDownloadStart = function(gid) {
  console.log(gid);
};

Example

See example.

Tests

npm install
npm test

Keywords

FAQs

Package last updated on 24 Apr 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc