Javascript Node.js发送音频文件并允许用户查找
我正在尝试创建一个应用程序,允许用户动态更改他们正在收听的曲目。我正在节点顶部使用sails.js。我遇到的问题是,当用户尝试在歌曲中查找当前时间之前或之后的某个时间时,歌曲将重新开始 这是我尝试在服务器上实现的最新代码Javascript Node.js发送音频文件并允许用户查找,javascript,node.js,audio,sails.js,Javascript,Node.js,Audio,Sails.js,我正在尝试创建一个应用程序,允许用户动态更改他们正在收听的曲目。我正在节点顶部使用sails.js。我遇到的问题是,当用户尝试在歌曲中查找当前时间之前或之后的某个时间时,歌曲将重新开始 这是我尝试在服务器上实现的最新代码 'index': function (request, response) { var path = require('path'); var fs = require('fs'); var filePath = path.joi
'index': function (request, response) {
var path = require('path');
var fs = require('fs');
var filePath = path.join('path\to\folder','music.mp3')
var stat = fs.statSync(filePath);
response.writeHead(200, {
'Content-Type': 'audio/mpeg',
'Content-Length': stat.size
});
fs.readFile(filePath,function (err,data) {
response.send(data);
});
}
找到节点的媒体流模块: 运行: 调整代码:
'index': function (request, response) {
var AUDIOFILE = 'path/to/audio.mp3'
ms.pipe(request,response,AUDIOFILE);
}
简单地通过模块来实现。希望这对遇到类似问题的人有所帮助。您需要支持字节范围请求。您知道如何使用node实现这一点吗?本模块似乎假设您的资源位于文件系统中(而不是数据库或其他存储机制)
'index': function (request, response) {
var AUDIOFILE = 'path/to/audio.mp3'
ms.pipe(request,response,AUDIOFILE);
}