如何创建一个简单的HTTP服务器,监听3000端口以提供视频服务
我们可以使用nodeJS和内置的nodeJS文件系统“fs”,借助于“express”来向浏览器/前端提供视频。在网页上观看视频,我们将使用HTML视频标签。我们将使用express进行路由设置。通过创建读取流并将res对象连接到它,我们将发送视频字节。让我们一步一步地来。
步骤1: 创建一个“app.js”文件并用npm初始化项目。另外,将要流式传输的视频文件放在同一个文件夹中。
步骤2: 现在安装express并创建“ index.html ”文件。
项目结构: 它将如下所示。
这里“ Welcome-To-GeeksforGeeks.mp4 ”是我们要流式传输的mp4文件。
步骤3: 现在让我们来编写“ app.js ”文件。 GET请求发送到‘ /stream ’将视频作为可读流发送。 应用程序的根目录加载“index.html”文件。 我们使用res.writeHead()函数将状态消息设为200,表示OK,并将内容类型设为mp4 / video。 现在我们将使用fs.createReadStream()函数创建一个读取流,将视频作为可读流发送到HTML视频标签。
app.js
步骤4: 现在我们将编写“ index.html ”文件。在这里,我们使用 controls 属性为视频标签提供各种控件。而 autoplay 是一个布尔属性,视频会在加载数据的同时开始自动播放。HTML视频标签的 src 属性是在app.js文件中定义的“/stream”。
index.html
步骤5: 现在使用以下方式运行应用程序
输出: 前往浏览器并输入 http://localhost:3000/