Code Monkey home page Code Monkey logo

node-jfum's Introduction

jQuery File Upload Middleware Build Status

NPM

Features

  • File upload handling
  • File size validation
  • File type validation
  • Made for Express 4.x

Requirements

  • Node.JS >= 0.10
  • Express >= 4

Install

npm install jfum --save

Usage

var JFUM = require('jfum');
var jfum = new JFUM({
  minFileSize: 204800,                      // 200 kB
  maxFileSize: 5242880,                     // 5 mB
  acceptFileTypes: /\.(gif|jpe?g|png)$/i    // gif, jpg, jpeg, png
});

OPTIONS

jQuery File Upload makes an OPTIONS request to the server before starting the uppload to make sure that it can upload to the given server.

app.options('/upload', jfum.optionsHandler.bind(jfum));

POST

app.post('/upload', jfum.postHandler.bind(jfum), function(req, res) {
  // Check if upload failed or was aborted
  if (req.jfum.error) {
    // req.jfum.error

  } else {
    // Here are the uploaded files
    for (var i = 0; i < req.jfum.files.length; i++) {
      var file = req.jfum.files[i];

      // Check if file has errors
      if (file.errors.length > 0) {
        for (var j = 0; i < file.errors.length; i++) {
          // file.errors[j].code
          // file.errors[j].message
        }

      } else {
        // file.field - form field name
        // file.path - full path to file on disk
        // file.name - original file name
        // file.size - file size on disk
        // file.mime - file mime type
      }
    }
  }
});

Error Codes

The req.jfum.files[] object can have the following error codes:

  • JFUM-001 - File type not allowed
  • JFUM-002 - File size too big
  • JFUM-003 - File size too small

node-jfum's People

Contributors

starefossen avatar

Watchers

Adam J. Mendoza avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.