Catch errors in some wired cases. This will prevent the proxy to crash badly if the Docker container just disappears.

This commit is contained in:
Bjoern Gruening
2015-12-25 18:56:26 +01:00
parent ed11f7ab00
commit 7b118990d2
+20 -6
View File
@@ -95,9 +95,17 @@ DynamicProxy.prototype.handleProxyRequest = function(req, res) {
this.rewriteRequest(req);
res.oldWriteHead = res.writeHead;
res.writeHead = function(statusCode, headers) {
res.setHeader('Access-Control-Allow-Origin', origin);
res.setHeader('Access-Control-Allow-Credentials', 'true');
res.oldWriteHead(statusCode, headers);
try {
res.setHeader('Access-Control-Allow-Origin', origin);
res.setHeader('Access-Control-Allow-Credentials', 'true');
res.oldWriteHead(statusCode, headers);
}
catch (error) {
console.log("Header could not be modified.");
console.log(error);
}
}
this.proxy.web(req, res, {
target: target
@@ -119,9 +127,15 @@ DynamicProxy.prototype.handleWs = function(req, res, head) {
this.rewriteRequest(req);
res.oldWriteHead = res.writeHead;
res.writeHead = function(statusCode, headers) {
res.setHeader('Access-Control-Allow-Origin', origin);
res.setHeader('Access-Control-Allow-Credentials', 'true');
res.oldWriteHead(statusCode, headers);
try {
res.setHeader('Access-Control-Allow-Origin', origin);
res.setHeader('Access-Control-Allow-Credentials', 'true');
res.oldWriteHead(statusCode, headers);
}
catch (error) {
console.log("Header could not be modified.");
console.log(error);
}
}
this.proxy.ws(req, res, head, {
target: target