uploadio
Version:
Simple middleware for uploading files.
29 lines (26 loc) • 937 B
JavaScript
const Busboy = require("busboy");
const saveToDisk = require("./saveToDisk");
var path = require("path");
const { buildOptions, parseFileName, debugLog } = require("./utils");
const AWS = require("aws-sdk");
const imageThumbnail = require("image-thumbnail");
const saveToS3 = require("./saveToS3");
/**
* Processes multipart request
* Builds a req.body object for fields
* Builds a req.files object for files
* @param {Object} options expressFileupload and Busboy options
* @param {Object} req Express request object
* @param {Object} res Express response object
* @param {Function} next Express next method
* @return {void}
*/
module.exports = (options, req, res, next) => {
options.shouldUploadToS3 =
options.saveToS3 && options.saveToS3.secretAccessKey !== "XXX";
if (options.shouldUploadToS3) {
saveToS3(options, req, res, next);
} else {
saveToDisk(options, req, res, next);
}
};