繁体   English   中英

如何在Node.js中创建Blob?

[英]How do I create a Blob in Node.js?

我试图在Node.js中创建一个Blob。 首先就是这样:

var b = new Blob(['hi', 'constructing', 'a', 'blob']);

失败并出现ReferenceError: Blob is not defined

然后,我尝试使用blob模块(两行代码来自该模块的示例,请参阅https://www.npmjs.com/package/blob ):

var Blob = require('blob');
var b = new Blob(['hi', 'constructing', 'a', 'blob']);

TypeError: Blob is not a constructor失败TypeError: Blob is not a constructor

我该怎么做?

Node.js的没有Blob ,它使用Buffer不要与混淆ArrayBuffer )和类型数组

您尝试使用的blob npm模块不在Node.js中使用,而是在浏览器中使用,以消除在不同浏览器中创建Blob的历史差异。 从其描述

跨浏览器的 Blob ,在适当时回落到BlobBuilder 如果都不可用,则导出undefined

(我的重点)

令人困惑的是,在过去的几年中,以浏览器为目标的程序包已经(大量)出现在npm上。 一段时间以来,使用require模块一直是诸如Webpack,Rollup等捆绑程序的功能,因此人们开始将npm用于浏览器的通用模块,就像将其用于Node.js的通用模块一样。 实际上,有些模块是在两种环境下均可工作的。 (但是blob似乎不是其中之一。)

在评论中,您说过要从Node.js进程上载文件。 您并不需要Blob ,在Node.js执行此操作的方式与在浏览器中执行此操作的方式不同。 因此,您可能想研究如何从Node.js上传文件,而不必担心Blob 但是,那将是一个不同的问题。 (一个可以在这里回答或者,如果您愿意使用Express,请在这里回答。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM