Node.js 将图像文件从react上载到nodejs

Node.js 将图像文件从react上载到nodejs,node.js,reactjs,image,file-upload,server,Node.js,Reactjs,Image,File Upload,Server,这是react代码 import React, { Component } from "react"; import Webcam from "react-webcam"; import * as faceapi from "face-api.js"; import { browserHistory } from "react-router"; import axios from "axios"; export default class WebCamPicure extends Comp

这是react代码

import React, { Component } from "react";
import Webcam from "react-webcam";
import * as faceapi from "face-api.js";
import { browserHistory } from "react-router";
import axios from "axios";



export default class WebCamPicure extends Component {
    constructor() {
        super();
        this.state = {

            selectedFile: null
        };
    fileSelectedHandler = (event) => {
        console.log(event.target.files[0]);
        this.setState({
            selectedFile: event.target.files[0]
        });
    };
    fileUploadHandler = () => {
        const fd = new FormData();
        fd.append("image", this.state.selectedFile, this.state.selectedFile.name);
        fetch("http://localhost:5000/upload", {
            method: "POST",
            headers: { "Content-Type": "multipart/form-data" },
            mode: "no-cors",
            body: fd
        });

    };

    render() {
        return (
            <div
                className="App"
                style={{
                    display: "flex",
                    flexDirection: "column",
                    alignItems: "center"
                }}
            >

                <div class="upload">
                    <input type="file" onChange={this.fileSelectedHandler} />
                    <button onClick={this.fileUploadHandler}>upload</button>
                </div>
            </div>
        );
    }
}
我正在尝试将图像上载到nodejs服务器,但无法在服务器中接收上载文件。我上载了上面的代码,请帮助我解决此问题。现在我需要在服务器中获取上载的文件并存储在数据库中


我正在尝试将图像上载到nodejs服务器,但无法在服务器中接收上载文件。我上载了上面的代码,请帮助我解决此问题。现在我需要在服务器中获取上载文件并存储在数据库中

您需要配置专用处理程序来处理多部分/表单数据。 你可以用

Multer是一个node.js中间件,用于处理多部分/表单数据,主要用于上传文件

const express = require("express");
var mysql = require("mysql");
const axios = require("axios");
var connection = mysql.createConnection({
    host: "localhost",
    user: "root",
    password: "",
    database: "expression_detection"
});
connection.connect((err) => {
    if (!!err) {
        console.log("error");
    } else {
        console.log("connected");
    }
});
const app = express();

app.get("/api/customers", (req, res) => {
    const customer = [
        { id: 1, firstname: "jhon", lastname: "doe" },
        { id: 2, firstname: "praveen", lastname: "smith" },
        { id: 3, firstname: "kumar", lastname: "swason" }
    ];
    res.json(customer);
});


app.get("/", (req, res) => {
    connection.query("SELECT * FROM individual_result", (error, row, fields) => {
        if (!!error) {
            console.log("Error in the query");
        } else {
            console.log("seccessful query");
            console.log(row);
        }
    });
    res.json("hello");
});


app.post("/upload", (req, file, res) => {
    console.log("got it");
    console.log(req);
    // console.log(res);
});

const port = 5000;
app.listen(port, () => {
    console.log("server started on port " + port);
});