我正在尝试在提交表单后使用工具(标题中列出)显示视频文件:
const
express = require('express'),
server = express(),
// SERVER MODULE/DEPENDENCY
multer = require("multer"),
// UPLOAD DEPENDENCY
fs = require('fs'),
// FOR THE VIDEO UPLOADS
PORT = process.env.PORT || 3000,
//USE AUTO ASSIGNED HEROKU PORT or 3000 for local. DO NOT REMOVE PROCESS.ENV.PORT
bodyParser = require('body-parser'),
//NEEDED FOR OUTSIDE JSON REQUESTS
_ = require('underscore'),
//FOR FILTERING OBJECTS AND OTHER TYPES OF DATA
storage = multer.diskStorage({
destination:function(req, file, callback){
callback(null, './video_uploads');
},
filename: function(req, file, callback){
callback(null, file.fieldname + '-' + Date.now());
}
});
// Video Upload on Multer Dependency
const upload = multer({ storage: storage}).single('video_upload');
server.use(bodyParser.json());
server.use(express.static(__dirname + '/public')); //
server.post('/register.html', function(req, res){
res.sendFile(__dirname + '/public/register.html');
});
server.post('/video_upload', function(req, res){
upload(req, res, function(err){
if(err){
return res.end('Error uploading file.');
}
else{
res.sendFile('req.file');
}
res.end();
});
});
上传工作正常,但我试图弄清楚如何发送上传的文件 上传后回到前端。
我有一个
"<div id="resume-video-player"></div>"
我想在上传完成后从客户端填写以自动播放上传的视频。我是否需要与Jquery或socket.io进行通信才能在此进行通信?我尝试使用res.sendfile进行实验,但是我得到的是一个错误的加载资源连接被拒绝。
感谢。
答案 0 :(得分:0)
视频的完整网址为
var url="PATH"+req.file.filename
将此信息发送给您的客户
res.json(url)
并在您的视频标记中将src设置为使用jQuery的url