【发布时间】:2015-06-29 17:05:51
【问题描述】:
我在将视频文件从一个服务器流式传输到另一个服务器时遇到问题。
我写了这个脚本
var request = require("request"),
express = require("express");
var app = express();
app.get("/cast", function(req, res) {
var url = req.query.video;
res.writeHead(200, {
'Content-Type': 'video/mp4'
});
request({
url: url,
headers: {
Referer: "http://example.com/1706398/" + url
}
})
.on('response', function(response) {
response.on('data', function(data) {
console.log("data chunk received: " + data.length)
});
response.on('end', function(data) {
console.log('Video completed');
});
})
.pipe(res);
});
app.listen(8080);
但视频响应有时有效,有时会损坏,相反,如果请求的数据被写入可写缓冲区并保存为视频文件,则它适用于任何 url。 我在我的代码中找不到任何错误或问题,这里有一些网址:
这是我尝试过的一些网址: https://gist.github.com/FrancisCan/f2bb86f8ff73b45fa192
谢谢:)
【问题讨论】:
-
我认为问题出在托管 URL 上,如果您尝试一下,您会收到一个 HTML 页面,而不是视频文件 eyesonanime.org/DDL/ANIME/NarutoShippuden_Ep_417_SUB_ITA.mp4
标签: node.js express request pipe