@iotize/cli
Version:
IoTize command line interface
54 lines • 1.87 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const impl_1 = require("@iotize/device-client.js/client/impl");
const body_parser_1 = __importDefault(require("body-parser"));
const express_1 = __importDefault(require("express"));
const typescript_rest_1 = require("typescript-rest");
const api_1 = require("./api");
const port = 3011;
let app = express_1.default();
app.use(body_parser_1.default.json());
app.use(body_parser_1.default.text());
// app.use(bodyParser.raw())
typescript_rest_1.Server.buildServices(app, api_1.TapRestService, api_1.FirmwareUpdateService);
app.use((err, req, res, next) => {
if (err instanceof impl_1.ResponseError || err.response) {
let statusCode = 400;
res.set('Content-Type', 'application/json');
res.status(400);
res.json({
error: err.message,
code: statusCode,
tapCode: err.response.codeRet()
});
}
else {
next(err);
}
});
app.use((err, req, res, next) => {
let statusCode;
if (err instanceof typescript_rest_1.Errors.HttpError) {
if (res.headersSent) {
// important to allow default error handler to close connection if headers already sent
return next(err);
}
statusCode = err.statusCode;
}
else {
statusCode = 500;
}
res.set('Content-Type', 'application/json');
res.status(statusCode);
res.json({
error: `Uncaught error. Cause: ${err.message}`,
statusCode: statusCode
});
});
app.listen(port, function () {
console.log(`Rest Server listening on port ${port}!`);
});
//# sourceMappingURL=main.js.map