@uppy/companion
Version:
OAuth helper and remote fetcher for Uppy's (https://uppy.io) extensible file upload widget with support for drag&drop, resumable uploads, previews, restrictions, file processing/encoding, remote providers like Dropbox and Google Drive, S3 and more :dog:
22 lines (18 loc) • 608 B
JavaScript
import * as tokenService from '../helpers/jwt.js'
import logger from '../logger.js'
export default function preauth(req, res) {
if (!req.body || !req.body.params) {
logger.info('invalid request data received', 'preauth.bad')
return res.sendStatus(400)
}
const providerConfig =
req.companion.options.providerOptions[req.params.providerName]
if (!providerConfig?.credentialsURL) {
return res.sendStatus(501)
}
const preAuthToken = tokenService.generateEncryptedToken(
req.body.params,
req.companion.options.preAuthSecret,
)
return res.json({ token: preAuthToken })
}