【发布时间】:2014-12-06 03:24:48
【问题描述】:
我在使用节点获取文件识别服务器端时遇到问题。
特别是在访问请求数据时,(req.files 或 req.body)
如果有人有任何建议,这里有一些 sn-ps。
html:
<form action="/upload" class="dropzone" drop-zone id="file-dropzone"></form>
角度控制器:
'use strict';
angular.module('app')
.controller('SampleCtrl', function ($scope, $http) {
})
.directive('dropZone', function() {
return function(scope, element, attrs) {
$(element).dropzone({
url: "/upload",
maxFilesize: 100,
maxThumbnailFilesize: 5
});
}
});
节点路由器:
'use strict';
var express = require('express');
var controller = require('./import.controller');
var router = express.Router();
router.post('/', controller.import);
module.exports = router;
节点控制器:
'use strict';
var express = require('express'),
_ = require('lodash'),
fs = require('fs'),
path = require('path'),
multer = require('multer'),
bodyParser = require('body-parser'),
app = express();
app.use(bodyParser.urlencoded({extended: true}));
exports.import = function(req, res) {
console.log(req.files); // responds with 'undefined'
console.log(req.body); // responds with {}
};
提前致谢
【问题讨论】:
-
您正在将 multer 中间件添加到控制器中的
app。我不认为它正在做你期望的事情,因为exports.import与app没有任何联系。 -
您好,我也遇到了同样的问题,请问您解决了吗?
标签: javascript angularjs node.js express