Updated: new backend demo & fix ng2-bs version
This commit is contained in:
@@ -1,35 +1,49 @@
|
|||||||
var express = require('express');
|
var express = require('express');
|
||||||
var Busboy = require('busboy');
|
var multer = require('multer');
|
||||||
var path = require('path');
|
|
||||||
var fs = require('fs');
|
var fs = require('fs');
|
||||||
|
|
||||||
var app = express();
|
var app = express();
|
||||||
|
|
||||||
|
var DIR = './uploads/';
|
||||||
|
|
||||||
|
var upload = multer({dest: DIR});
|
||||||
|
|
||||||
app.use(function (req, res, next) {
|
app.use(function (req, res, next) {
|
||||||
res.setHeader('Access-Control-Allow-Origin', '!put your host here!');
|
res.setHeader('Access-Control-Allow-Origin', 'http://valor-software.github.io');
|
||||||
res.setHeader('Access-Control-Allow-Methods', 'POST');
|
res.setHeader('Access-Control-Allow-Methods', 'POST');
|
||||||
res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type');
|
res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type');
|
||||||
res.setHeader('Access-Control-Allow-Credentials', true);
|
res.setHeader('Access-Control-Allow-Credentials', true);
|
||||||
next();
|
next();
|
||||||
});
|
});
|
||||||
|
|
||||||
app.post('/api', function (req, res) {
|
app.use(multer({
|
||||||
var fstream;
|
dest: DIR,
|
||||||
var files = [];
|
rename: function (fieldname, filename) {
|
||||||
var busboy = new Busboy({headers: req.headers});
|
return filename + Date.now();
|
||||||
busboy.on('file', function (fieldname, file, filename) {
|
},
|
||||||
fstream = fs.createWriteStream(__dirname + '/uploads/' + filename);
|
onFileUploadStart: function (file) {
|
||||||
file.pipe(fstream);
|
console.log(file.originalname + ' is starting ...');
|
||||||
fstream.on('close', function () {
|
},
|
||||||
files.push(filename);
|
onFileUploadComplete: function (file) {
|
||||||
file.resume();
|
console.log(file.fieldname + ' uploaded to ' + file.path);
|
||||||
});
|
}
|
||||||
});
|
}));
|
||||||
|
|
||||||
busboy.on('finish', function () {
|
app.get('/api', function (req, res) {
|
||||||
res.end('ok');
|
res.end('file catcher example');
|
||||||
});
|
|
||||||
req.pipe(busboy);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
app.listen(process.env.PORT || 3000);
|
app.post('/api', function (req, res) {
|
||||||
|
upload(req, res, function (err) {
|
||||||
|
if (err) {
|
||||||
|
return res.end(err.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
res.end('File is uploaded');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
var PORT = process.env.PORT || 3000;
|
||||||
|
|
||||||
|
app.listen(PORT, function () {
|
||||||
|
console.log('Working on port ' + PORT);
|
||||||
|
});
|
||||||
|
|||||||
@@ -33,8 +33,8 @@
|
|||||||
},
|
},
|
||||||
"homepage": "https://github.com/valor-software/ng2-file-upload#readme",
|
"homepage": "https://github.com/valor-software/ng2-file-upload#readme",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"angular2": "^2.0.0-alpha.42",
|
"angular2": "2.0.0-alpha.42",
|
||||||
"ng2-bootstrap": "^0.40.0",
|
"ng2-bootstrap": "0.42.0",
|
||||||
"reflect-metadata": "0.1.2",
|
"reflect-metadata": "0.1.2",
|
||||||
"ts-loader": "0.5.6",
|
"ts-loader": "0.5.6",
|
||||||
"zone.js": "0.5.8"
|
"zone.js": "0.5.8"
|
||||||
|
|||||||
@@ -110,6 +110,7 @@ var config = {
|
|||||||
loader: 'ts',
|
loader: 'ts',
|
||||||
query: {
|
query: {
|
||||||
ignoreDiagnostics: [
|
ignoreDiagnostics: [
|
||||||
|
6053,
|
||||||
// TS2305 -> Module 'ng' has no exported member
|
// TS2305 -> Module 'ng' has no exported member
|
||||||
2305,
|
2305,
|
||||||
// TS2307 -> Cannot find external module
|
// TS2307 -> Cannot find external module
|
||||||
|
|||||||
Reference in New Issue
Block a user