Node.js 未处理';错误';NodeJs中的事件

Node.js 未处理';错误';NodeJs中的事件,node.js,npm,wkhtmltopdf,fs,Node.js,Npm,Wkhtmltopdf,Fs,我在NodeJs中工作,在“fs”npm包的帮助下尝试将文件编写为.pdf时,我遇到了一些错误,甚至pdf也没有生成。我需要帮助来摆脱这一困境,问题是 events.js:167 throw er; // Unhandled 'error' event ^ Error: write EPIPE at WriteWrap.afterWrite [as oncomplete] (net.js:833:14) Emitted 'error' event at:

我在NodeJs中工作,在“fs”npm包的帮助下尝试将文件编写为.pdf时,我遇到了一些错误,甚至pdf也没有生成。我需要帮助来摆脱这一困境,问题是

    events.js:167
      throw er; // Unhandled 'error' event
      ^

Error: write EPIPE
    at WriteWrap.afterWrite [as oncomplete] (net.js:833:14)
Emitted 'error' event at:
    at onwriteError (_stream_writable.js:431:12)
    at onwrite (_stream_writable.js:456:5)
    at _destroy (internal/streams/destroy.js:40:7)
    at Socket._destroy (net.js:603:3)
    at Socket.destroy (internal/streams/destroy.js:32:8)
    at WriteWrap.afterWrite [as oncomplete] (net.js:835:10)
有关此错误的代码:

let doc = await wkhtmltopdf(options, xxxx);
let file = await doc.stdout.pipe(fs.createWriteStream(`${__dirname}/${id}_init.pdf`));
期待中的感谢!! 我尝试重新安装fs软件包,更改端口,但没有改进
我认为问题也可能是wkhtmltopdf包的bcz(我正在使用Mac)

我建议您进行以下更改,这对我来说非常有效:

// Set url and options to whatever you wish
let doc = wkhtmltopdf(url, options);
let file = doc.pipe(fs.createWriteStream(`${__dirname}/${id}_init.pdf`));
由于wkhtmltopdf和doc.pipe都不承诺返回,因此我们不能在两个调用中使用wait

您也可以尝试直接写入文件,跳过流,例如

wkhtmltopdf('http://google.com/', { output: 'out.pdf' }); 

也请发布相关代码,而不仅仅是错误。顺便说一下,你绝对不需要从npm安装
fs
;这是一个内置模块。可以这个问题是wkhtmltopdf的bcz吗?我想是soThanks@Terry,但它对我不起作用,它现在生成的是空pdf当你尝试另一个Url时它起作用了吗?比如谷歌?我只是想知道问题是否特定于您的目标Url。是的,非常感谢@Terry为您提供的时间和回复,问题是因为Mac需要安装wkhtmltopdf,如
brew cask安装wkhtmltopdf