Node.js 仅在文件转换后发送响应
我有以下代码,但我感到困惑的是,只有在文件转换后才发送api响应,而不仅仅是在文件上载时(当前是这样做的):Node.js 仅在文件转换后发送响应,node.js,ffmpeg,Node.js,Ffmpeg,我有以下代码,但我感到困惑的是,只有在文件转换后才发送api响应,而不仅仅是在文件上载时(当前是这样做的): router.post('/uploadAudio/',函数(req,res){ 上传音频(请求、恢复、功能(错误){ 如果(错误){ //上载时出错 犯错误; } res.json({ 是的, 消息:req.file.filename, }); var proc=new ffmpeg({source:'../game/src/assets/sounds/'+req.file.filen
router.post('/uploadAudio/',函数(req,res){
上传音频(请求、恢复、功能(错误){
如果(错误){
//上载时出错
犯错误;
}
res.json({
是的,
消息:req.file.filename,
});
var proc=new ffmpeg({source:'../game/src/assets/sounds/'+req.file.filename,nolog:true})
进程setFfmpegPath(ffmpeginshiller.path)
过程
//将输出格式设置为强制
.toFormat(“ogg”)
//设置事件处理程序
.on('end',函数(){
log('文件已成功转换');
})
.on('error',函数(err){
log('发生错误:'+err.message);
})
//保存到文件
.saveToFile('../game/src/assets/sounds/'+req.file.filename.replace(/\.^/]+$/,'')+'.ogg');
});
});
router.post('/uploadAudio/', function (req, res) {
uploadAudio(req, res, function (err) {
if (err) {
// An error occurred when uploading
throw err;
}
res.json({
sucess: true,
message: req.file.filename,
});
var proc = new ffmpeg({ source: '../game/src/assets/sounds/' + req.file.filename, nolog: true })
proc.setFfmpegPath(ffmpegInstaller.path)
proc
// set output format to force
.toFormat('ogg')
// setup event handlers
.on('end', function () {
console.log('file has been converted successfully');
})
.on('error', function (err) {
console.log('an error happened: ' + err.message);
})
// save to file <-- the new file I want -->
.saveToFile('../game/src/assets/sounds/' + req.file.filename.replace(/\.[^/.]+$/, "") + '.ogg');
});
});