Answer:
- For single file: use upload.single(‘fieldName’) — then the uploaded file is in req.file.
- For multiple files (same field): use upload.array(‘fieldName’, maxCount) — req.files is an array of file objects.
- For multiple fields with potentially multiple files each: use upload.fields([{ name: ‘field1’, maxCount: n1 }, { name: ‘field2’, maxCount: n2 }]).
You define a storage engine (e.g. diskStorage) with destination and filename functions, possibly filter file types, set file size limits, etc.