我正在尝试阅读pdf并通过Zapier中的JS Code对其进行编码。有人知道如何编码Google云端硬盘PDF文件吗?
正在尝试这样做:
const fs = require('fs');
let buff = fs.readFileSync('https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf');
let base64data = buff.toString('base64');
output = [{fileEncoded: base64data}];
但是收到此错误:
Error: ENOENT: no such file or directory, open 'https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf'
有什么想法吗?
Node的fs
模块处理f ile s系统,因此您不能使用它从Web下载文件。
尝试从this github issue改编此示例:
async function download() {
const res = await fetch('https://assets-cdn.github.com/images/modules/logos_page/Octocat.png');
await new Promise((resolve, reject) => {
const fileStream = fs.createWriteStream('./octocat.png');
res.body.pipe(fileStream);
res.body.on("error", (err) => {
reject(err);
});
fileStream.on("finish", function() {
resolve();
});
});
}
您可以在Zapier JS中使用await
,而无需进行任何额外的工作