javascript - Electron JS 从流中设置视频源
问题描述
我正在尝试使用 Electron JS 创建一个桌面应用程序。该应用程序应该使用特定标头请求视频(mp4)文件,然后将视频源设置为我得到的响应。
我的 render.js 文件:
var request = require("request");
const video = document.querySelector("video");
const options = {
url: 'http://somesite.site/resource.mp4',
headers: {
'Referer': 'https://somereferrer.site/'
}
};
request(options).pipe(video.srcObject);
我的 index.html 文件:
<script defer src="render.js"></script>
<video controls></video>
我的 main.js 文件:
const { app, BrowserWindow } = require('electron')
app.commandLine.appendSwitch('disable-features', 'OutOfBlinkCors');
function createWindow () {
const win = new BrowserWindow({
title: "Anime Viewer",
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true,
webSecurity: false
}
})
win.removeMenu();
win.webContents.openDevTools();
win.loadFile('index.html')
}
app.whenReady().then(createWindow)
但是,我在控制台上收到以下错误,并且视频元素保持不变:
Uncaught TypeError: Cannot read property 'on' of null
at Request.Stream.pipe (internal/streams/legacy.js:32:8)
at Request.pipe
Uncaught TypeError: Cannot read property 'headers' of null
at Request.pipeDest
Uncaught Error: Parse Error: User callback error
at Socket.socketOnData
有谁知道我做错了什么?
解决方案
推荐阅读
- apache-kafka - 融合云kafka集群如何扩容?
- java - 如何忽略一些 Java 的 Files.lines 行尾分隔符
- flutter - 为什么“设置类型的值
' 无法从方法 'toHive' 返回,因为它的返回类型为 'ShProblemHive'。” - ios - Xamarin Forms:防止键盘调整视图大小
- javascript - Ruby 和其他语言(Python、JavaScript)不同的 hmac sha256 结果
- javascript - 每当解决承诺时如何附加到状态?
- ios - iOS15 UICollectionView自定义布局,插入item后viewForSupplementaryElementOfKind总是重新创建一个新的header
- tcp - 监控windows上的TCP并发连接
- debugging - Keil Ide 在尝试调试或编程时崩溃
- cplex - Cplex SyntaxError:语法无效