valencia-datos-abiertos
Version:
Command-line client for the Valencia public API: [Valencia datos abiertos](http://www.valencia.es/ayuntamiento/datosabiertos.nsf/vDocumentosTituloAux/Datos abiertos).
69 lines (53 loc) • 1.56 kB
JavaScript
// Generated by CoffeeScript 1.8.0
(function() {
var Communicator, authFilePath, fs, iconv, path, request, url;
fs = require("fs");
path = require("path");
request = require("request");
iconv = require("iconv-lite");
url = "http://mapas.valencia.es/lanzadera";
authFilePath = path.join(process.env.HOMEDRIVE, process.env.HOMEPATH, ".node-valencia.auth.json");
Communicator = (function() {
var password, userName;
userName = null;
password = null;
function Communicator() {
var data, e;
try {
data = fs.readFileSync(authFilePath, "utf-8");
} catch (_error) {
e = _error;
throw new Error("authorization file (" + authFilePath + ") does not exist: " + e);
}
data = JSON.parse(data);
userName = data.userName;
password = data.password;
}
Communicator.prototype.get = function(path, callback) {
var options;
if (path == null) {
path = "/";
}
options = {
url: url + path,
proxy: "http://10.238.234.6:3128",
auth: {
user: userName,
pass: password
},
json: true
};
return request(options, function(err, res, body) {
if (err) {
return callback(err);
}
if (res.statusCode !== 200) {
return callback(new Error("Error status code: " + res.statusCode));
}
return callback(null, body);
});
};
return Communicator;
})();
module.exports = new Communicator();
}).call(this);