airship-server
Version:
Airship is a framework for Node.JS & TypeScript that helps you to write big, scalable and maintainable API servers.
46 lines • 1.45 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const fs_1 = require("fs");
const path_1 = require("path");
const express = require('express');
const multer = require('multer');
const upload = multer();
const app = express();
const env = process.env['NODE_ENV'] || 'development';
const config = {
'development': {
imagesPath: '/Users/altox/Desktop/eventsCovers/'
},
'production': {
imagesPath: '/var/www/events.vkforms.ru/app/public/covers/'
}
};
const conf = config[env];
app.post('/upload', upload.single('file'), function (req, res, next) {
let ext = path_1.extname(req.file.originalname);
let name = genId(20) + ext;
if (!(ext == '.gif' ||
ext == '.jpg' ||
ext == '.jpeg' ||
ext == '.png')) {
res.json({ ok: false });
return;
}
console.log(conf.imagesPath + name);
fs_1.writeFile(conf.imagesPath + name, req.file.buffer, (err) => {
if (err)
console.log(err);
res.json({ name });
});
});
app.listen(6001, function () {
console.log('HH Events Images Upload server started');
});
function genId(len) {
let text = '';
let possible = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
for (let i = 0; i < len; i++)
text += possible.charAt(Math.floor(Math.random() * possible.length));
return text;
}
//# sourceMappingURL=HHEventsImagesUpdloadServer.js.map