1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- /*
- * @Author: Johnhong9527
- * @Date: 2019-06-05 11:10:09
- * @Last Modified by: Johnhong9527
- * @Last Modified time: 2019-06-10 16:47:55
- * https://juejin.im/post/5a1a80a5f265da43333e1b88
- */
- var express = require('express');
- var formidable = require('formidable');
- var fs = require('fs');
- var crypto = require('crypto');
- // 引入json解析中间件
- var bodyParser = require('body-parser');
- var app = express();
- // 添加json解析
- app.use(bodyParser.json());
- app.use(bodyParser.urlencoded({ extended: false }));
- // 允许所有的请求形式
- /*app.all('*', function(req, res, next) {
- res.header('Access-Control-Allow-Origin', '*');
- res.header('Access-Control-Allow-Credentials', true);
- res.header('Access-Control-Allow-Headers', 'Content-Type,Accept,X-Requested-With,traceid,rpcid');
- res.header('Access-Control-Allow-Methods', 'PUT,POST,GET,DELETE,OPTIONS');
- res.header('Content-Type', 'application/json;charset=utf-8');
- next();
- });*/
- app.use('/public', express.static('public'));
- // 路由
- app.get('/', function(req, res) {
- res.send('Hello World!');
- });
- app.post('/upload', function(req, res) {
- var form = new formidable.IncomingForm();
- setTimeout(() => {
- // md5
- form.parse(req, function(error, fields, files) {
- // console.log('parsing done');
- // let fileMD5 = md5.update(new Date()).digest('hex');
- // let fileType = files.upload_file.type.split('/')[1];
- // let fileType = ;
- var md5 = crypto.createHash('md5');
- var upload_file = files.upload_file;
- var fileMd5 = md5.update(upload_file.name + Date.parse(new Date()) / 1000).digest('hex');
- var fileType = upload_file.type.split('/')[1];
- var fileName = fileMd5 + '.' + fileType;
- fs.writeFileSync('public/' + fileName, fs.readFileSync(files.upload_file.path));
- res.send({
- status: 0,
- data: {
- uri: fileName,
- url: 'http://localhost:3333/public/' + fileName
- }
- });
- });
- }, 200);
- });
- var server = app.listen(3333, function() {
- var host = server.address().address;
- var port = server.address().port;
- console.log('Example app listening at http://%s:%s', host, port);
- });
|