Как использовать webtorrent в браузере browser

У меня возникли проблемы с примером, показанным в https://github.com/feross/webtorrent Я пытаюсь использовать код в браузере. Поэтому я сначала создаю файл с именем app.js

app.js

var WebTorrent = require('webtorrent')
var concat = require('concat-stream')

var client = new WebTorrent()
console.log('Hi there');
client.download('magnet:?xt=urn:btih:XXXXXXXX', function (torrent) {
  // Got torrent metadata!
  console.log('Torrent info hash:', torrent.infoHash)

  torrent.files.forEach(function (file) {
    // Get the file data as a Buffer (Uint8Array typed array)
    file.createReadStream().pipe(concat(function (buf) {

      // Append a link to download the file
      var a = document.createElement('a')
      a.download = file.name
      a.href = URL.createObjectURL(new Blob([ buf ]))
      a.textContent = 'download ' + file.name
      document.body.appendChild(a)
    }))
  })
})

Затем я набираю команду browserify app.js > bundle.js так что это может заставить работать код для браузера. Я создаю другой файл с именем index.html:

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>test</title>
    <script src="bundle.js"></script>
</head>

<body id="home">

    <h1>test</h1>


</body>
</html>

Из консоли я вижу только "Привет!" Кажется, что функция client.download() не работает. Почему это случилось? Я новичок в browserify, что-то не так с командой, которую я использую?

1 ответ

Решение

WebTorrent может загружать только те торренты, которые явно загружены в сеть WebTorrent. Торрент-клиенты должны поддерживать WebRTC для взаимодействия с веб-браузерами. В настоящее время ни один клиент не поддерживает его, но вы можете использовать http://instant.io/ чтобы начать заполнять новый торрент и попробовать загрузить его с помощью библиотеки WebTorrent в своем приложении. Включите отладочные журналы на http://instant.io/, установив `localStorage.debug = '*', чтобы получить информационный хэш торрента.

Вы также можете узнать больше здесь:

Другие вопросы по тегам