HTTPに基づいたプロトコル(Icecast Source Protocol)をサポートするには、HTTPリクエストが送信されたNode.jsのhttp.Serverからソケットを使用できるようにする必要があります。終了しました。サンプルの要求は次のようになります。Node.jsサーバへのHTTPリクエスト/レスポンス後にソケットを開いたままにする
Client->Server: GET/HTTP/1.0
Client->Server: Some-Headers:header_value
Client->Server:
Server->Client: HTTP/1.0 200 OK
Server->Client:
Client->Server: <insert stream of binary data here>
これはインターネットラジオストリームのソースをサポートするためのものです。ストリームデータのソースはこの場合クライアントです。
Node.jsのhttp.Serverに組み込まれている方法はありますか?私はポート1337にtelnetし、要求を行った場合、私は、サーバーのコンソールウィンドウに入力する内容の最初のカップルの文字を見ることができていますが、その後、サーバは接続を閉じ
this.server = http.createServer(function (req, res) {
console.log('connection!');
res.writeHead(200, {test: 'woot!'});
res.write('test');
res.write('test2');
req.connection.on('data', function (data) {
console.log(data);
});
}).listen(1337, '127.0.0.1');
:私はこれを試してみました。理想的には、私はそのソケットを無期限に開いたままにして、最初のリクエストが行われたらループからHTTP部分を取り除きます。
これは株式http.Serverクラスで可能ですか?