Pinata云视频提取:操作不安全
Pinata cloud Video extraction: The operation is insecure
我正在尝试从 IPFS 云 (pinata.cloud) 中的视频中获取缩略图,但收到错误消息“操作不安全”。
视频的link:https://gateway.pinata.cloud/ipfs/QmWWeXfCNrgThTzAxbS7AZywnsgp2sdB9rbi5kxuUyUwpZ
到目前为止我有这个:
<video id="videoHolder" controls>
<source src="https://gateway.pinata.cloud/ipfs/QmWWeXfCNrgThTzAxbS7AZywnsgp2sdB9rbi5kxuUyUwpZ" type="video/mp4" />
</video>
<canvas id="canvas-element"></canvas>
<a id="test-link"></a>
<script>
function thumbnails() {
var _VIDEO = document.querySelector("#videoHolder"),
_CANVAS = document.querySelector("#canvas-element"),
_CANVAS_CTX = _CANVAS.getContext("2d");
_CANVAS_CTX.drawImage(_VIDEO, 0, 0, _VIDEO.videoWidth, _VIDEO.videoHeight);
// Video metadata is loaded
_VIDEO.addEventListener('loadedmetadata', function() {
// Set canvas dimensions same as video dimensions
_CANVAS.width = _VIDEO_PICTURE.videoWidth;
_CANVAS.height = _VIDEO_PICTURE.videoHeight;
});
download()
}
var download = function(){
var link = document.getElementById('test-link');
link.download = 'filename.png';
link.href = document.getElementById('canvas-element').toDataURL()
}
</script>
我也在某处读到它部分是由于 crossOrigin 但由于它在 IPFS 上我无法编辑它(据我所知)。
那么我怎样才能实现在 IFPS 上使用 JavaScript 从该视频中获取缩略图的目标呢?
这与 ipfs://
协议无关,因为 Pinata 的云服务通过 https://
提供该内容。
这里有一个与操作不安全错误相关的问题:canvas.toDataURL() Security Error The operation is insecure
这个问题的最佳答案解释了为什么你不能绕过这个安全功能:
相反,使用反向代理作为可信源来提供 IPFS 内容会冒高带宽风险,因此您可能需要查看使用服务器提取 Pinata 云上托管的视频帧的路线。
我正在尝试从 IPFS 云 (pinata.cloud) 中的视频中获取缩略图,但收到错误消息“操作不安全”。
视频的link:https://gateway.pinata.cloud/ipfs/QmWWeXfCNrgThTzAxbS7AZywnsgp2sdB9rbi5kxuUyUwpZ
到目前为止我有这个:
<video id="videoHolder" controls>
<source src="https://gateway.pinata.cloud/ipfs/QmWWeXfCNrgThTzAxbS7AZywnsgp2sdB9rbi5kxuUyUwpZ" type="video/mp4" />
</video>
<canvas id="canvas-element"></canvas>
<a id="test-link"></a>
<script>
function thumbnails() {
var _VIDEO = document.querySelector("#videoHolder"),
_CANVAS = document.querySelector("#canvas-element"),
_CANVAS_CTX = _CANVAS.getContext("2d");
_CANVAS_CTX.drawImage(_VIDEO, 0, 0, _VIDEO.videoWidth, _VIDEO.videoHeight);
// Video metadata is loaded
_VIDEO.addEventListener('loadedmetadata', function() {
// Set canvas dimensions same as video dimensions
_CANVAS.width = _VIDEO_PICTURE.videoWidth;
_CANVAS.height = _VIDEO_PICTURE.videoHeight;
});
download()
}
var download = function(){
var link = document.getElementById('test-link');
link.download = 'filename.png';
link.href = document.getElementById('canvas-element').toDataURL()
}
</script>
我也在某处读到它部分是由于 crossOrigin 但由于它在 IPFS 上我无法编辑它(据我所知)。
那么我怎样才能实现在 IFPS 上使用 JavaScript 从该视频中获取缩略图的目标呢?
这与 ipfs://
协议无关,因为 Pinata 的云服务通过 https://
提供该内容。
这里有一个与操作不安全错误相关的问题:canvas.toDataURL() Security Error The operation is insecure
这个问题的最佳答案解释了为什么你不能绕过这个安全功能:
相反,使用反向代理作为可信源来提供 IPFS 内容会冒高带宽风险,因此您可能需要查看使用服务器提取 Pinata 云上托管的视频帧的路线。