File upload fix

This commit is contained in:
mrfry 2021-05-05 09:12:41 +02:00
parent 0da1dab95d
commit 8730318741
4 changed files with 30 additions and 14 deletions

View file

@ -83,6 +83,11 @@ function GetApp(): ModuleType {
], ],
}) })
) )
app.use(
fileUpload({
limits: { fileSize: 50 * 1024 * 1024 },
})
)
// ------------------------------------------------------------------------------------------- // -------------------------------------------------------------------------------------------
let rootRedirectURL = '' let rootRedirectURL = ''
@ -141,11 +146,6 @@ function GetApp(): ModuleType {
logger.Log(`Using public dir: ${pdir}`) logger.Log(`Using public dir: ${pdir}`)
app.use(express.static(pdir)) app.use(express.static(pdir))
}) })
app.use(
fileUpload({
limits: { fileSize: 50 * 1024 * 1024 },
})
)
// ------------------------------------------------------------------------------------------- // -------------------------------------------------------------------------------------------

View file

@ -9,9 +9,15 @@ function setup(data: SubmoduleData): void {
const { app /* userDB, url, publicdirs, moduleSpecificData */ } = data const { app /* userDB, url, publicdirs, moduleSpecificData */ } = data
app.post('/postfeedbackfile', function (req: Request, res: any) { app.post('/postfeedbackfile', function (req: Request, res: any) {
utils.uploadFile(req, uloadFiles).then(() => { utils
.uploadFile(req, uloadFiles)
.then(() => {
res.json({ success: true }) res.json({ success: true })
}) })
.catch(() => {
res.json({ success: false, msg: 'error during uploading' })
return
})
logger.LogReq(req) logger.LogReq(req)
logger.Log('New feedback file', logger.GetColor('bluebg')) logger.Log('New feedback file', logger.GetColor('bluebg'))

View file

@ -239,7 +239,7 @@ function setup(data: SubmoduleData): void {
}) })
}) })
.catch(() => { .catch(() => {
res.end('something bad happened :s') res.json({ success: false, msg: 'something bad happened :s' })
}) })
}) })

View file

@ -184,6 +184,13 @@ function deleteFile(fname: string): Boolean {
function uploadFile(req: Request, path: string): Promise<any> { function uploadFile(req: Request, path: string): Promise<any> {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
try { try {
if (!req.files) {
logger.Log(
`Unable to upload file, req.files is undefined`,
logger.GetColor('redbg')
)
return
}
const file = req.files.file const file = req.files.file
// FIXME: Object.keys(req.files).forEach((file) => { saveFile() }) // FIXME: Object.keys(req.files).forEach((file) => { saveFile() })
logger.Log('Uploading: ' + file.name, logger.GetColor('blue')) logger.Log('Uploading: ' + file.name, logger.GetColor('blue'))
@ -217,7 +224,10 @@ function uploadFile(req: Request, path: string): Promise<any> {
} }
}) })
} catch (err) { } catch (err) {
logger.Log(`Unable to upload file!`, logger.GetColor('redbg')) logger.Log(
`Unable to upload file, error on stderr`,
logger.GetColor('redbg')
)
console.error(err) console.error(err)
reject(err) reject(err)
} }