2016-03-24 9 views
1

私はちょうど例えばhttp://livestream.rfn.ru:8080/kulturafm/mp3_192kbpsからいくつかのオーディオストリームを読みたいと思っています。ノードjsでオーディオストリームを読み取る方法は?

<HTML> <ヘッド> <タイトル> Wowza Streaming Engineの4月版4.4.0 build17748 < /タイトル> < /ヘッド> <体:この

http = require('http') 

options = 
    host: 'livestream.rfn.ru' 
    path: ':8080/kulturafm/mp3_192kbps' 

callback = (res) -> 
    res.on 'data', (chunk) -> console.log String(chunk) 
    res.on 'end', -> console.log('No more data in response.') 

http.request(options, callback).end() 

出力があるように私のコードです> Wowzaストリーミングエンジン4月間版4.4.0 build17748 </body > </html >

これ以上のデータは応答しません。私はMP3ストリームからデータを取得する方法を理解できません。

答えて

0

ここでの問題は、ポート(8080)をパスに入れていることです。これは間違っています。 HTTPクライアントはデフォルトでポート80に接続しています。

このようにオプションオブジェクトを指定する必要はありません。 URLを渡すだけで、あなたのために解析されます。 http.get()を使用すると、適切な動詞と.end()が設定されます。

var streamUrl = 'http://livestream.rfn.ru:8080/kulturafm/mp3_192kbps'; 
http.get(streamUrl, callback); 
+0

Oh stupid me!ありがとう!もう1つの方法は、オプションにポート8080を追加して、それをパスから削除することです。私はドキュメントのportプロパティを見過ごしただけです。 – hagent

+0

@hagentうん、ちょうど 'port'オプションです。 https://nodejs.org/api/http.html#http_http_request_options_callback – Brad

関連する問題