#node.js #json #pdf
Вопрос:
Я пытаюсь преобразовать PDF-файл, загруженный пользователем, в JSON. Мой мыслительный процесс заключается в том, что после того, как я проанализировал PDF, я могу записать эту проанализированную информацию в файл JSON, содержащий информацию о PDF. Я использую multer для обработки загрузки файла и PDF2JSON для анализа буфера, заданного хранилищем памяти multer. Мой вопрос в том, что когда я использую метод pdfParser.parseBuffer в своем буфере, я возвращаюсь неопределенным. Что я здесь делаю не так?
const cors = require("cors");
const fs = require("fs");
const multer = require("multer");
const PDFParser = require("pdf2json");
const app = express();
const storage = multer.memoryStorage();
const upload = multer({ storage });
app.use(cors());
app.use(express.urlencoded({ extended: true }));
app.use(express.json());
app.post("/upload", upload.single("file"), (req, res) => {
if (!req.file) {
return res.status(404).send({ message: "Please upload a file" });
}
const pdfParser = new PDFParser();
let fileBuffer = req.file.buffer;
fs.writeFileSync("uploadedPDF", fileBuffer);
fs.readFile("./uploadedPDF", (err, fileBuffer) => {
console.log("reading");
console.log(fileBuffer);
if (!err) {
let parsedPDF = pdfParser.parseBuffer(fileBuffer);
console.log("getting parsed pdf");
console.log(parsedPDF);
} else {
console.log(err);
}
});
return res.send("Single file");
});
const PORT = 5000 || process.env.PORT;
app.listen(PORT, () => {
console.log(`server is running on ${PORT} nice and hot`);
});