【问题标题】:Stream Youtube video via Node.js server通过 Node.js 服务器流式传输 Youtube 视频
【发布时间】:2015-10-28 17:19:18
【问题描述】:

我正在尝试在 Node.js 中创建一个简单的 Web 服务器,它会调用 Youtube 视频 API 来获取视频并将其流式传输到客户端(经过一些检查,但我目前并不关心)作为它从 Youtube 检索它。

首先,我尝试分两部分进行,下载并保存到磁盘,然后从磁盘流式传输。虽然我能够将文件从磁盘流式传输到客户端,但我无法下载和保存部分工作。这是代码

var request = require('request');
var http = require('http');
var fs = require('fs');

http.createServer(function(req,res)
{
    request('http://www.youtube.com/embed/XGSy3_Czz8k').pipe(fs.createWriteStream('testvideo.mp4'));
}).listen(80, '127.0.0.1');

        console.log('Server running at http://127.0.0.1:80/');

我认为请求模块可以简单地将输出通过管道传输到文件。有人可以建议我在这里做错了什么吗?

关于如何从 youtube 获取视频并在从 youtube 检索视频时同时流式传输到客户端的任何指导?

【问题讨论】:

  • 我是 node.js 的新手,所以如果您还可以在我试图加深对 node 的理解时提及对这个问题投反对票的原因,那将会很有帮助。

标签: node.js youtube-api


【解决方案1】:

我尝试过这样做,但它确实有效。

var request = require('request');
var http = require('http');
var fs = require('fs');

http.createServer(function(req,res)
{
    var x = request('http://www.youtube.com/embed/XGSy3_Czz8k')
    req.pipe(x)
    x.pipe(res)
}).listen(1337, '127.0.0.1');

        console.log('Server running at http://127.0.0.1:1337/');

【讨论】:

  • 它给了我错误Refused to execute script because its MIME type ('text/html') is not executable, and strict MIME type checking is enabled.你是怎么解决这个问题的?
  • 查看如何设置内容类型
猜你喜欢
  • 2017-09-04
  • 1970-01-01
  • 2010-11-03
  • 2011-05-20
  • 1970-01-01
  • 2019-10-16
  • 1970-01-01
  • 2019-01-26
  • 1970-01-01
相关资源
最近更新 更多