You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

41 lines
1.5 KiB

var express = require("express");
var bodyParser = require("body-parser");
var path = require("path");
var Storage = require("./storage");
var StorageTree = require("./storage_tree");
var Router = require("./router");
var RouterDynamicLoading = require("./router_dynamic_loading");
var itemInitializer = require("./item_initializer");
module.exports = function (host = "127.0.0.1", port = "9200") {
var app = express();
var storage = new Storage(require("./data.json"), itemInitializer);
var dynamicStorage = new StorageTree(require("./data-dynamic.json"), itemInitializer);
var router = new Router("/data", storage);
var dynLoading = new RouterDynamicLoading("/data-dynamic", dynamicStorage);
app.use(bodyParser.json()); // for parsing application/json
app.use(bodyParser.urlencoded({ extended: true })); // for parsing application/x-www-form-urlencoded
app.use(function (req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
res.header("Access-Control-Allow-Methods", "*");
next();
});
router.connect(app);
dynLoading.connect(app);
app.use("/codebase", express.static(path.join(__dirname, "..", "codebase")));
app.use("/samples", express.static(path.join(__dirname, "..", "samples")));
app.use(/^\/$/, function (req, res) {//default url
res.redirect("/samples");
});
var server = app.listen(port, host, function () {
console.log("Server is running on port " + port + "...");
});
};