как отправить файл изображения на сервер используя multer и отреагировать JS - PullRequest
0 голосов
/ 27 января 2020

Я пытаюсь отправить файл изображения на сервер, но он ничего не отображает. Я пытался использовать Multer, но он также не работает. Я также пытался отобразить req.body, но отображается пустое {}

Справка

Express. js

const bodyParser = require("body-parser");

const app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
var multer = require("multer");
var upload = multer({ dest: "uploads/" });
app.post("/", upload.single("photo"), (req, res, next) => {

    console.log(req.file);

});
app.listen(8000, () => console.log("Server is running on 8080"));

Реакция JS

send_image = async () => {
let body = new FormData();
body.set("photo", {
  uri:
    "https://snaped.fns.usda.gov/sites/default/files/styles/crop_ratio_7_5/public/seasonal-produce/2018-05/watermelon.jpg",
  name: "photo",
  filename: "imageName.jpg",
  type: "image/jpeg"
});
//body.append("Content-Type", "image/jpeg");

await fetch("https://786fm.sse.codesandbox.io/", {
  method: "POST",
  headers: {
    "Content-Type": "image/jpeg"
  },
  body: body
})
  .then(res => res.json())
  .then(res => {
    console.log("response" + JSON.stringify(res));
  })
  .catch(e => console.log(e));
};
UNSAFE_componentWillMount() {
    this.send_image();
}
...