我有一个(响应)js应用程序,该应用程序使用FileReader读取PDF文件,然后使用fetch将其发送到运行Express的节点js服务器。但是,在服务器端收到请求时,请求正文为未定义。我的代码缺少什么才能正常工作?
客户端:
function readFile() {
let file = fileInputRef.current.files[0];
const reader = new FileReader();
return new Promise((resolve) => {
reader.onload = function (e) {
resolve(e.target.result);
};
reader.readAsDataURL(file);//readAsDataURL,readAsArrayBuffer,or readAsBinaryString?
});
}
function handleSubmit(event) {
event.preventDefault();
readFile().then((value) => {
fetch('/gen/file',{
method: 'POST',body: value
})
});
服务器端:
const express = require('express');
const path = require('path');
const bodyParser = require('body-parser')
const app = express();
const jsonParser = bodyParser.json()
const port = 3000;
app.post("/gen/file",function (req,res,next) {
console.log(req.body);//undefined - Why????
});
app.listen(port,function (err) {
if (err) console.log(err);
});