簡體   English   中英

使用nodejs上傳文件,使用dropzone進行表達和角度

[英]File upload with nodejs, express and angular using dropzone

我在獲取文件識別節點的服務器端時遇到問題。

特別是在訪問請求數據時(req.files或req.body)

如果有人有任何建議,請參考以下摘錄。

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文檔:

var express = require('express')
var multer  = require('multer')

var app = express()
app.use(multer({ dest: './uploads/'}));

console.log(req.body)
console.log(req.files)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM