Articles of multer

Multer数组只返回一个文件

我正在使用multer在数据库中存储多个文件。 这些文件正确地存储在我的数据库,但是,如果我打印req.files我只得到一个文件。 这是我的代码: var storage = GridfsStorage({ url: config.mongo.uri, filename(req, file, cb) { cb(null, file.originalname); }, metadata(req, file, cb) { cb(null, {owner: req.params.driver}) } }); var upload = multer({ storage: storage }).array('files[]'); return upload(req, res, function (err) { if(err) { handleError(err); } console.log(req.files); // –> Getting only one file, even thought it stores all of […]

当试图上传一个文件得到404没有find错误节点js

这是我的代码: angular.module('fileModelDirective',[]) .directive('fileModel',['$parse',function ($parse) { return { restrict: 'A', link: function (scope, element, attrs) { var parsedFile = $parse(attrs.fileModel); var parsedFileSetter = parsedFile.assign; element.bind('change', function () { scope.$apply(function () { parsedFileSetter(scope, element[0].files[0]); }); }); } }; }]); 在服务器上我有: app.post('/upload', function (req, res) { upload(req, res, function (err) { if (err) { if (err.code === 'LIMIT_FILE_SIZE') […]

上传后无法删除文件

我用multer包上传文件。 而且我使用sharp来调整和复制许多文件,所以我不能删除第一个上传文件。 这是我的代码 var multer = require('multer'); var upload = multer({dest: 'upload/'}); app.route('/uploadIcon') .post(upload.single('file'), uploadfunction); function uploadfunction(req, res) { var dir = './app/controllers/configs/' + req.body.domain; if (!fs.existsSync(dir)) { fs.mkdirSync(dir); } if (!fs.existsSync(dir + '/icon.iconset')) { fs.mkdirSync(dir + '/icon.iconset'); } var dir_icon = dir + '/icon.iconset/'; var file = dir + '/icon.iconset/' + 'default.png'; fs.rename(req.file.path, file, […]

如果没有提供文件名,Multer会挂起

我想看看我的服务器是如何运行的,如果我没有提供一个文件名,当上传一个图像,而m只是挂起。 有什么方法让我可以让超时吗? 或在错误的表单上抛出错误? 这很容易造成DoS攻击,这就是我担心的原因。 以下是我发送的多部分头文件,有意省略文件名: String header = "–" + boundary + LINE_FEED + // "Content-Disposition: form-data; name=\"" + field_name + "\"; filename=\"" + "bitmap.jpg" + "\"" + LINE_FEED + "Content-Disposition: form-data; name=\"" + field_name + "\"" + LINE_FEED + "Content-Type: " + content_type + LINE_FEED + "Content-Transfer-Encoding: binary" + LINE_FEED + LINE_FEED; 这是我的服务器代码挂起。 before […]

Node.js TypeError:无法读取未定义的属性“path”

我已经看了很多同样的问题的答案,但我还没有find一个工作的解决scheme。 我试图做一个Web应用程序,您可以上传文件使用快递和MULTER,我有一个问题,没有文件正在上传和REQ.FILE总是未定义。 Express和Mul版本为: "express": "^4.15.4", "multer": "^1.3.0" 我的configure.js看起来这样: multer = require('multer'); module.exports = function(app) { app.use(morgan('dev')); app.use(multer({ dest: path.join(__dirname, 'public/upload/temp')}).single('file')); routes(app); app.use('/public/', express.static(path.join(__dirname, '../public'))); 消费代码如下所示: var tempPath = req.file.path, ext = path.extname(req.file.name).toLowerCase(), targetPath = path.resolve('./public/upload/' + imgUrl + ext); if (ext === '.png' || ext === '.jpg' || ext === '.jpeg' || ext === '.gif') […]

inputtypes字段validation失败时如何停止上传图像?

访问Web服务后,如果validation失败,则上传图像。 我需要控制它。 如果validation成功,则应该上传图像。 我已经在由sequelize创build的模型中定义了validation代码。 如果validation成功,如何防止并上传图像? 型号代码是 name : { type : sequelize.STRING, validate : { notEmpty : {msg : 'The Name is required!'} } }, email : { type : sequelize.STRING, validate : { notEmpty : {msg : 'The email field is required!'}, isEmail : {msg : 'The email format is not correct!'} } }, […]

如何在新标签中查看图像,而不是使用Multer在NodeJS中下载

我使用Multer并通过表单添加图像。 我已成功创build上传文件夹中的文件。 当我尝试调用url时,它正在以文件格式下载。 我需要在基于MIMEtypes的新选项卡中打开它。 达到这个目标的最好方法是什么? 以下是我的代码: app.use('/images', express.static(__dirname + '/file/uploads/')); 示例url: http://localhost:2020/images/b78339184694e2e6864a77d4f3067db5

实现上传到单独的文件服务器的最佳方法?

所以我们有一个由node.js,express和mongodb组成的网页。 我在DMZ有2个服务器,没有join到AD中。 其中一台服务器将在网页上提供服务,另一台服务器将纯粹接收并提供video文件。 服务器正在运行iis和iisnode。 目前该页面正在使用MULTER上传文件,这对于上传到运行代码的相同服务器来说工作良好。 上传到单独的服务器被certificate是困难的,而我的谷歌search没有让我更接近解决scheme。 我希望上传和下载直接在客户端和video服务器之间,而不是通过networking服务器。 任何提示如何处理这个?

在validation失败时立即停止file upload

我正在处理平均堆栈应用程序,并面临file upload的一个问题。 我想立即停止所有上传global.isProcessKilledvariables为true 。 我的代码如下 photo.js var express = require("express"); var app = express() var router = express.Router(); var multer = require("multer"); var mongoose = require("mongoose"); var fs = require("fs"); var jwt = require("jsonwebtoken"); var lib = require("../../../config/lib"); var storage = multer.diskStorage({ destination: function(req, file, cb) { cb(null, dirPath); }, filename: function(req, file, cb) { […]

Fille上传node.js,multer,imagemagick无法正常工作

以下是我的代码。 我在MVC模板中使用express。 我使用邮递员在表格数据模式下testing这条路线。 目录是public/images/avatar/1510932719839-BHqhegjFMc3Qf/只有我上传的文件(图片)不在其中。 我没有收到任何错误,没有任何问题,没有崩溃。 app.js let routes = require('./routes')(app, dbPool, passport, redisClient); app.use(express.static('public')); app.get("*", function (req, res) { fs.createReadStream("./public/index.html").pipe(res); }); app.use(bodyParser.urlencoded({ extended: true, limit: '50mb', parameterLimit: 10000 })); app.use(bodyParser.json()); app.listen(80); fileUploadRoute.js let FileUploadController = require('./../controllers/fileUploadController'); module.exports = function (app, dbPool, passport, redisClient) { let fileUploadController = new FileUploadController(dbPool, redisClient); let uploadRouteImage = "/api/upload/image/"; let […]