Commit 3b21d8f058870dc93cf497bc79f378d4f38814e3

Authored by Igor Kulikov
1 parent 784b8af6

Improve web-ui microservice

Showing 1 changed file with 12 additions and 19 deletions
@@ -65,23 +65,26 @@ var server; @@ -65,23 +65,26 @@ var server;
65 65
66 apiProxy.on('error', function (err, req, res) { 66 apiProxy.on('error', function (err, req, res) {
67 logger.warn('API proxy error: %s', err.message); 67 logger.warn('API proxy error: %s', err.message);
68 - res.writeHead(500);  
69 - if (err.code && err.code === 'ECONNREFUSED') { 68 + if (res.writeHead) {
  69 + res.writeHead(500);
  70 + if (err.code && err.code === 'ECONNREFUSED') {
70 res.end('Unable to connect to ThingsBoard server.'); 71 res.end('Unable to connect to ThingsBoard server.');
71 - } else { 72 + } else {
72 res.end('Thingsboard server connection error: ' + err.code ? err.code : ''); 73 res.end('Thingsboard server connection error: ' + err.code ? err.code : '');
  74 + }
73 } 75 }
74 }); 76 });
75 - }  
76 -  
77 - if (useApiProxy) {  
78 app.all('/api/*', (req, res) => { 77 app.all('/api/*', (req, res) => {
79 - logger.debug(req.method + ' ' + req.originalUrl);  
80 - apiProxy.web(req, res); 78 + logger.debug(req.method + ' ' + req.originalUrl);
  79 + apiProxy.web(req, res);
81 }); 80 });
82 81
83 app.all('/static/rulenode/*', (req, res) => { 82 app.all('/static/rulenode/*', (req, res) => {
84 - apiProxy.web(req, res); 83 + apiProxy.web(req, res);
  84 + });
  85 +
  86 + server.on('upgrade', (req, socket, head) => {
  87 + apiProxy.ws(req, socket, head);
85 }); 88 });
86 } 89 }
87 90
@@ -92,16 +95,6 @@ var server; @@ -92,16 +95,6 @@ var server;
92 95
93 app.use(express.static(root)); 96 app.use(express.static(root));
94 97
95 - if (useApiProxy) {  
96 - app.get('*', (req, res) => {  
97 - apiProxy.web(req, res);  
98 - });  
99 -  
100 - server.on('upgrade', (req, socket, head) => {  
101 - apiProxy.ws(req, socket, head);  
102 - });  
103 - }  
104 -  
105 server.listen(bindPort, bindAddress, (error) => { 98 server.listen(bindPort, bindAddress, (error) => {
106 if (error) { 99 if (error) {
107 logger.error('Failed to start ThingsBoard Web UI Microservice: %s', e.message); 100 logger.error('Failed to start ThingsBoard Web UI Microservice: %s', e.message);