Parse a magnet URI and return an object of keys/values.
Also works in the browser with browserify! This module is used by WebTorrent.
install
npm install magnet-uri
usage
var magnet = // "Leaves of Grass" by Walt Whitmanvar 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 = console // "Leaves of Grass by Walt Whitman.epub"console // "d2474e86c95b19b8bcfdb92bc12c9d44667cfa36"
The parsed
magnet link object looks like this:
"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" // added for convenience: "infoHash": "d2474e86c95b19b8bcfdb92bc12c9d44667cfa36" "name": "Leaves of Grass by Walt Whitman.epub" "announce": "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"
license
MIT. Copyright (c) Feross Aboukhadijeh.