javascript - 使用 node.js 将上传的文件发送到客户端
问题描述
我是 node.js 的新手。这是我的问题:我从 html 上传文件
<form method="POST" action="/upload" enctype="multipart/form-data"
<div>
<input type="file" name="myFile" id="fileUpload" multiple />
</div>
<div>
<input type="submit" name="btn_upload" value="Upload" />
</div>
</form>
然后我使用 multer 从目录上传文件并使用 npm pdfParser 从 pdf 解析为 json,文件定期复制到主目录中,代码返回主页。
try {
app.post("/upload", (req, res) => {
upload(req, res, (err) => {
if (err) {
console.log(err);
} else {
if (req.file == undefined) {
res.redirect("index.html");
} else {
fileOriginale = req.file.originalname;
const pdfParser = new PDFParser();
pdfParser.on("pdfParser_dataError", (errData) =>
console.error(errData.parserError)
);
pdfParser.on("pdfParser_dataReady", (pdfData) => {
const test = fileOriginale.substring(0, fileOriginale.length - 4);
const id = __dirname + "/" + test + ".json";
console.log("filetofetch in pdfParser", id);
fs.writeFile(
id,
JSON.stringify(pdfData),
(err) => console.error(err)
);
});
pdfParser.loadPDF(__dirname + "/" + fileOriginale.toString());
res.redirect("index.html");
res.end();
return;
}
}
});
});
} catch (err) {
console.log(err);
return;
}
这里的问题是:如何解析主目录中加载的 .json 文件并将其发送到客户端?
解决方案
推荐阅读
- java - spring boot CLIENT_PLUGIN_AUTH 是必需的,检查mysql版本
- r - 尽管发出 purrr 的“否则”错误 - 为什么没有触发 purrr/可能的“否则”?
- javascript - 将位转换为二进制值
- aws-iot-greengrass - 树莓派无法连接到greengrass v1
- python - 从 QML 文件获取属性到 .py 文件
- blockchain - 椭圆曲线密钥验证失败
- python - Tkinter (TTK) - 我怎样才能让树视图标题始终处于焦点?
- angular - AWS-Amplify - 如果我想要的只是一个 Angular 登录组件怎么办
- html - Bootstrap 按钮填充使按钮看起来像是越过了容器边框
- javascript - onClick 没有在 React.js 中使用 SweetAlert 模式触发