Аз съм нов за възел JS и имам функция за качване на изображение от API. Но когато ударя URL адреса от пощальон, използвайки формулярни данни, имащи изображение на име на поле, тогава в отговор ми показва. Ето изображението на пощальона
Грешка при качването на файл
долу е моят код
Моят router.js съдържа: -
var express = require("express");
var router = express.Router();
var ctrlSteuern = require("../controllers/steuern.controllers.js");
рутер
.route("/steuern/image_upload")
.post(ctrlSteuern.imageUpload);
в Controller имам: -
var multer = require("multer");
var multiparty = require("multiparty");
var storage = multer.diskStorage({
destination: function (req, file, callback) {
callback(null, "./image");
},
filename: function (req, file, callback) {
callback(null, file.fieldname + "-" + Date.now());
}
});
var upload = multer({ storage : storage}).single("image");
module.exports.imageUpload = function(req, res){
upload(req,res,function(err) {
if(err) {
return res.end("Error uploading file.");
}
return res.end("File is uploaded");
});
}
Отговори:
0 за отговор № 1Ето кода ми за запазване на изображение в папка.
exports.saveMedia = (req, res) => {
const storage = multer.diskStorage({
destination: (req, file, callback) => {
callback(null, (config.const.path.base + config.const.path.productReviewMedia));
},
filename: (req, file, callback) => {
callback(null, Date.now() + "-" + file.originalname);
}
});
const upload = multer({storage: storage}).any("file");
upload(req, res, (err) => {
if (err) {
return res.status(400).send({
message: helper.getErrorMessage(err)
});
}
let results = req.files.map((file) => {
return {
mediaName: file.filename,
origMediaName: file.originalname,
mediaSource: "http://" + req.headers.host + config.const.path.productReviewMedia + file.filename
}
});
res.status(200).json(results);
});
}
Ето молба за поща.