Updated: backend demo
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -19,3 +19,5 @@ npm-debug.log
|
|||||||
/components/**/*.js.map
|
/components/**/*.js.map
|
||||||
|
|
||||||
/logs
|
/logs
|
||||||
|
|
||||||
|
!/demo/components/file-upload/file-catcher.js
|
||||||
|
|||||||
@@ -12,7 +12,8 @@ let tabDesc:Array<any> = [
|
|||||||
{
|
{
|
||||||
heading: 'Simple',
|
heading: 'Simple',
|
||||||
ts: require('!!prismjs?lang=typescript!./file-upload/simple-demo.ts'),
|
ts: require('!!prismjs?lang=typescript!./file-upload/simple-demo.ts'),
|
||||||
html: require('!!prismjs?lang=markup!./file-upload/simple-demo.html')
|
html: require('!!prismjs?lang=markup!./file-upload/simple-demo.html'),
|
||||||
|
js: require('!!prismjs?lang=javascript!./file-upload/file-catcher.js')
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -38,6 +39,11 @@ tabDesc.forEach(desc => {
|
|||||||
<pre class="language-typescript"><code class="language-typescript" ng-non-bindable>${desc.ts}</code></pre>
|
<pre class="language-typescript"><code class="language-typescript" ng-non-bindable>${desc.ts}</code></pre>
|
||||||
</div>
|
</div>
|
||||||
</tab>
|
</tab>
|
||||||
|
<tab heading="Backend Demo">
|
||||||
|
<div class="card card-block panel panel-default panel-body">
|
||||||
|
<pre class="language-javascript"><code class="language-javascript" ng-non-bindable>${desc.js}</code></pre>
|
||||||
|
</div>
|
||||||
|
</tab>
|
||||||
</tabset>
|
</tabset>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
35
demo/components/file-upload/file-catcher.js
Normal file
35
demo/components/file-upload/file-catcher.js
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
var express = require('express');
|
||||||
|
var Busboy = require('busboy');
|
||||||
|
var path = require('path');
|
||||||
|
var fs = require('fs');
|
||||||
|
|
||||||
|
var app = express();
|
||||||
|
|
||||||
|
app.use(function (req, res, next) {
|
||||||
|
res.setHeader('Access-Control-Allow-Origin', '!put your host here!');
|
||||||
|
res.setHeader('Access-Control-Allow-Methods', 'POST');
|
||||||
|
res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type');
|
||||||
|
res.setHeader('Access-Control-Allow-Credentials', true);
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
|
||||||
|
app.post('/api', function (req, res) {
|
||||||
|
var fstream;
|
||||||
|
var files = [];
|
||||||
|
var busboy = new Busboy({headers: req.headers});
|
||||||
|
busboy.on('file', function (fieldname, file, filename) {
|
||||||
|
fstream = fs.createWriteStream(__dirname + '/uploads/' + filename);
|
||||||
|
file.pipe(fstream);
|
||||||
|
fstream.on('close', function () {
|
||||||
|
files.push(filename);
|
||||||
|
file.resume();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
busboy.on('finish', function () {
|
||||||
|
res.end('ok');
|
||||||
|
});
|
||||||
|
req.pipe(busboy);
|
||||||
|
});
|
||||||
|
|
||||||
|
app.listen(process.env.PORT || 3000);
|
||||||
Reference in New Issue
Block a user