2015-12-09 2 views
-1

Comment télécharger un fichier .tif sur mon GeoServer en cours d'exécution via Node.js? Je voudrais télécharger un fichier GeoTIFF pour le fournir en tant que WMS par le GeoServer.Télécharger .tif à GeoServer via Node.js

Le GeoServer répond avec un 405, ce que je pense est vrai (http://docs.geoserver.org/latest/en/user/rest/api/coveragestores.html#workspaces-ws-coveragestores-cs-file-extension). Malheureusement, je ne trouve pas le fichier sur le GeoServer.

Ceci est mon code:

// GeoServer upload 

var http = require('http'); 
var auth = 'Basic ' + new Buffer('admin' + ':' + 'geoserver').toString('base64'); 
//build the object to post 
var post_data = (path.join(paperpath, paperid, "geotiff", req.files["otherfiles"][fileno].originalname)); // Path to .tif file 

var s = JSON.stringify(post_data); 
var post_options = { 
    host: 'localhost', 
    port: '9000', 
    path: '/geoserver/rest/workspaces/myWorkspace/coveragestores/test/file', 
    method: 'POST', 
    headers: { 
    'Content-Length': s.length, 
    'Content-Type': 'image/tif', 
    'Authorization': auth 
    } 
} 
    // Set up the request 
var post_req = http.request(post_options, function(res) { 
    res.setEncoding('utf8'); 
    console.log(res.statusCode); 

    res.on('data', function(chunk) { 
    console.log('Success! ' + chunk); 
    }); 
}); 
// post the data 
post_req.write(s); 
post_req.end(); 

Répondre

0

Je pense que vous devez d'abord télécharger le fichier dans un dossier qui est accesible de geoserver (mieux dans un dossier du répertoire de données geoserver), puis utiliser le reste api pour configurer le magasin de couverture. Cochez cette blog post il devrait vous donner un coup de pouce