Replaced res.download, decreased tile levels, more output

pull/1/head
Piero Toffanin 2016-12-14 12:55:35 -05:00
rodzic a76c247abc
commit a74a5323b2
3 zmienionych plików z 15 dodań i 4 usunięć

Wyświetl plik

@ -24,6 +24,7 @@ let packageJson = JSON.parse(fs.readFileSync('./package.json'));
let logger = require('./libs/logger');
let path = require('path');
let async = require('async');
let mime = require('mime');
let express = require('express');
let app = express();
@ -315,9 +316,16 @@ app.get('/task/:uuid/download/:asset', getTaskFromUuid, (req, res) => {
let asset = req.params.asset !== undefined ? req.params.asset : "all.zip";
let filePath = req.task.getAssetsArchivePath(asset);
if (filePath){
res.download(filePath, filePath, err => {
if (err) res.json({error: "Asset not ready"});
});
if (fs.existsSync(filePath)){
res.setHeader('Content-Disposition', `attachment; filename=${asset}`);
res.setHeader('Content-Type', mime.lookup(asset));
res.setHeader('Content-Length', fs.statSync(filePath)["size"]);
const filestream = fs.createReadStream(filePath);
filestream.pipe(res);
}else{
res.json({error: "Asset not ready"});
}
}else{
res.json({error: "Invalid asset"});
}

Wyświetl plik

@ -231,6 +231,8 @@ module.exports = class Task{
const postProcess = () => {
const createZipArchive = (outputFilename, files) => {
return (done) => {
this.output.push(`Compressing ${outputFilename}`);
let output = fs.createWriteStream(this.getAssetsArchivePath(outputFilename));
let archive = archiver.create('zip', {});
@ -296,7 +298,7 @@ module.exports = class Task{
const generateTiles = (inputFile, outputDir) => {
return (done) => {
this.tilingProcess = gdalRunner.runTiler({
zoomLevels: "16-22",
zoomLevels: "16-21",
inputFile: path.join(this.getProjectFolderPath(), inputFile),
outputDir: path.join(this.getProjectFolderPath(), outputDir)
}, (err, code, signal) => {

Wyświetl plik

@ -25,6 +25,7 @@
"body-parser": "^1.15.2",
"express": "^4.14.0",
"glob": "^7.1.1",
"mime": "^1.3.4",
"minimist": "^1.2.0",
"morgan": "^1.7.0",
"multer": "^1.1.0",