@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:
17 lines (16 loc) • 646 B
JavaScript
;
const tokenService = require('../helpers/jwt');
const logger = require('../logger');
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 });
}
module.exports = preauth;