magnet-uri
Version:
Parse a magnet URI and return an object of keys/values
53 lines (38 loc) • 1.87 kB
Markdown
[](https://travis-ci.org/feross/magnet-uri)
[](https://npmjs.org/package/magnet-uri)
[](https://npmjs.org/package/magnet-uri)
[](https://www.gittip.com/feross/)
[](https://ci.testling.com/feross/magnet-uri)
Also works in the browser with [browserify](http://browserify.org/)! This module is used by [WebTorrent](http://webtorrent.io).
```
npm install magnet-uri
```
```js
var magnet = require('magnet-uri')
// "Leaves of Grass" by Walt Whitman
var uri = 'magnet:?xt=urn:btih:d2474e86c95b19b8bcfdb92bc12c9d44667cfa36&dn=Leaves+of+Grass+by+Walt+Whitman.epub&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Ftracker.publicbt.com%3A80&tr=udp%3A%2F%2Ftracker.istole.it%3A6969&tr=udp%3A%2F%2Ftracker.ccc.de%3A80&tr=udp%3A%2F%2Fopen.demonii.com%3A1337'
var parsed = magnet(uri)
console.log(parsed.dn) // "Leaves+of+Grass+by+Walt+Whitman.epub"
console.log(parsed.infoHash) // "d2474e86c95b19b8bcfdb92bc12c9d44667cfa36"
```
The `parsed` magnet link object looks like this:
```js
{
"xt": "urn:btih:d2474e86c95b19b8bcfdb92bc12c9d44667cfa36",
"dn": "Leaves+of+Grass+by+Walt+Whitman.epub",
"tr": [
"udp://tracker.openbittorrent.com:80",
"udp://tracker.publicbt.com:80",
"udp://tracker.istole.it:6969",
"udp://tracker.ccc.de:80",
"udp://open.demonii.com:1337"
],
"infoHash": "d2474e86c95b19b8bcfdb92bc12c9d44667cfa36" // added for convenience!
}
```
MIT. Copyright (c) [Feross Aboukhadijeh](http://feross.org).