将带有其他 key-value 参数的图像上传到 NodeJS/Express 中的邮递员

Upload a image with other key-value parameters to postman in NodeJS/Express

我是 NodeJS 的新手,我尝试通过 postman 到 post 图像。 可我就是想不通自己哪里不足了?

postman参数:

NodeJS 代码

现在要在我的 NodeJS 中访问这些值,我正在这样做:

var express = require('express');
var bodyParser = require('body-parser');

const router = express.Router();
router.use(bodyParser.json());

router.post('/postData/uploadStory', function(req, res) {
    console.log(req.files);
    console.log(req.body);
     res.json("Hi");
})

如何访问图像和 key-value?

还查看了 express-fileupload node-module 为我完成这项工作。

没有成功。

我错过了什么吗?请帮忙。谢谢。

multer 是在 node.js

中上传文件的最佳选择

multerHelper.js

这样的 multer 创建单独的文件夹
const multer = require('multer');
let fs = require('fs-extra');

let storage = multer.diskStorage({
destination: function (req, file, cb) {
    fs.mkdirsSync(__dirname + '/uploads/images'); // fs.mkdirsSync will create folders if it does not exist
    cb(null, __dirname + '/uploads/images');
},
filename: function (req, file, cb) {
   console.log(file);

    cb(null, Date.now() + '-' + file.originalname);
 }
})

let upload = multer({ storage: storage });

let createUserImage = upload.single('photo');

let multerHelper = {
    createUserImage,
}

module.exports = multerHelper;

在你的路线中导入multerhelper文件

const multerHelper = require("../helpers/multer_helper");

router.post('/upload/:userid',multerHelper, function(req, res) {
    console.log(req.files);
    console.log(req.body);
     res.json("Hi");
})