diff options
author | Yukai Huang | 2016-11-14 17:07:07 +0800 |
---|---|---|
committer | Yukai Huang | 2016-11-14 17:07:07 +0800 |
commit | a5dad2930037b466542f1e77d3cbb0d0cbf184aa (patch) | |
tree | 9a987f37d91b11fc36898d9e6c75767bfd7255b9 /app.js | |
parent | 81b368c11c81c7c759d4abcdff455121f2e87d9a (diff) |
support filesystem image upload
Diffstat (limited to 'app.js')
-rw-r--r-- | app.js | 38 |
1 files changed, 26 insertions, 12 deletions
@@ -405,6 +405,7 @@ app.get('/me', function (req, res) { //upload to imgur app.post('/uploadimage', function (req, res) { var form = new formidable.IncomingForm(); + form.uploadDir = "public/uploads"; form.keepExtensions = true; @@ -414,20 +415,33 @@ app.post('/uploadimage', function (req, res) { } else { if (config.debug) logger.info('SERVER received uploadimage: ' + JSON.stringify(files.image)); - imgur.setClientId(config.imgur.clientID); + try { - imgur.uploadFile(files.image.path) - .then(function (json) { - if (config.debug) - logger.info('SERVER uploadimage success: ' + JSON.stringify(json)); - res.send({ - link: json.data.link.replace(/^http:\/\//i, 'https://') - }); - }) - .catch(function (err) { - logger.error(err); - return res.status(500).end('upload image error'); + switch (config.imageUploadType) { + case 'filesystem': + res.send({ + link: files.image.path.match(/^public(.+$)/)[1] }); + + break; + + case 'imgur': + default: + imgur.setClientId(config.imgur.clientID); + imgur.uploadFile(files.image.path) + .then(function (json) { + if (config.debug) + logger.info('SERVER uploadimage success: ' + JSON.stringify(json)); + res.send({ + link: json.data.link.replace(/^http:\/\//i, 'https://') + }); + }) + .catch(function (err) { + logger.error(err); + return res.status(500).end('upload image error'); + }); + break; + } } catch (err) { logger.error(err); return res.status(500).end('upload image error'); |