how to use upload code example
Example 1: file uploading
const express = require('express');
const authenticate = require('../authenticate');
const multer = require('multer');
const storage = multer.diskStorage({
destination: (req, file, cb) => {
cb(null, 'public/images');
},
filename: (req, file, cb) => {
cb(null, file.originalname)
}
});
const imageFileFilter = (req, file, cb) => {
if(!file.originalname.match(/\.(jpg|jpeg|png|gif)$/)) {
return cb(new Error('You can upload only image files!'), false);
}
cb(null, true);
};
const upload = multer({ storage: storage, fileFilter: imageFileFilter});
const uploadRouter = express.Router();
uploadRouter.route('/')
.get(authenticate.verifyUser, authenticate.verifyAdmin, (req, res) => {
res.statusCode = 403;
res.end('GET operation not supported on /imageUpload');
})
.post(authenticate.verifyUser, authenticate.verifyAdmin, upload.single('imageFile'), (req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'application/json');
res.json(req.file);
})
.put(authenticate.verifyUser, authenticate.verifyAdmin, (req, res) => {
res.statusCode = 403;
res.end('PUT operation not supported on /imageUpload');
})
.delete(authenticate.verifyUser, authenticate.verifyAdmin, (req, res) => {
res.statusCode = 403;
res.end('DELETE operation not supported on /imageUpload');
});
module.exports = uploadRouter;
Example 2: how to upload
In order to upload file using selenium we need to locate the upload button
in the DOM html. Then we do sendKeys by passing the path to the file.
First, I locate the element which takes the path of the file(Choose file button) :
WebElement input = driver.findElement(“id”);
And then I provide the path to the file using the sendKeys method :
input.sendKeys(“/path/to/file” + Keys.ENTER);