将带有其他 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 为我完成这项工作。
- 使用
input name=foo type=file
创建了一个简单的 ejs
- 试图以
console.log(req.files)
. 在 server.js 文件中访问它
没有成功。
我错过了什么吗?请帮忙。谢谢。
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");
})
我是 NodeJS 的新手,我尝试通过 postman
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 为我完成这项工作。
- 使用
input name=foo type=file
创建了一个简单的 ejs
- 试图以
console.log(req.files)
. 在 server.js 文件中访问它
没有成功。
我错过了什么吗?请帮忙。谢谢。
multer 是在 node.js
中上传文件的最佳选择为 multerHelper.js
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");
})