BiFace_Server_Config_API/server.js
2021-01-22 03:41:42 +00:00

92 lines
2.9 KiB
JavaScript

'use strict';
var express = require('express'),
app = express(),
cors = require('cors'),
port = 4004,
bodyParser = require('body-parser'),
jsonwebtoken = require("jsonwebtoken");
const http = require("http");
var request = require('request');
app.use(bodyParser.urlencoded({extended: true}));
app.use(bodyParser.json({limit: '50mb'}));
app.use(function (req, res, next) {
if (req.headers && req.headers.authorization && req.headers.authorization.split(' ')[0] === 'JWT') {
jsonwebtoken.verify(req.headers.authorization.split(' ')[1], 'RESTFULAPIs', function (err, decode) {
if (err)
req.user = undefined;
req.user = decode;
next();
});
} else {
req.user = undefined;
next();
}
});
app.use(cors());
var ApiRoutes = require('./api/routes/ApiRoutes');
ApiRoutes(app);
app.use(function (req, res) {
res.status(404).send({url: req.originalUrl + ' not found'});
});
const server = app.listen(port);
const io = require('socket.io').listen(server);
app.set('socketio', io);
io.sockets.on('connection', function (socket) {
socket.on('ThemVanTay', function (msg) {
socket.broadcast.emit(msg);
});
});
setInterval(function () {
http.get("http://localhost/api/sync", res => {
res.on("data", d => {
});
res.on("end", () => {
console.log("end");
});
});
}, 60000);
request.get({
url: "http://localhost/api/re-gen-feature",
json: true,
headers: {'User-Agent': 'request'}
}, (err, res, data) => {
if (err) {
console.log('Error:', err);
} else if (res.statusCode !== 200) {
console.log('Status:', res.statusCode);
} else {
// data is already parsed as JSON:
console.log(data);
}
});
setInterval(function () {
request.get({
url: "http://localhost/api/auto-gen-feature",
json: true,
headers: {'User-Agent': 'request'}
}, (err, res, data) => {
if (err) {
console.log('Error:', err);
} else if (res.statusCode !== 200) {
console.log('Status:', res.statusCode);
} else {
// data is already parsed as JSON:
console.log(data);
}
});
}, 120000);
console.log('BiFace Started On Port: ' + port);
module.exports = app;