kopia lustrzana https://github.com/c9/core
Catch errors where header contains invalid characters
rodzic
9fee4dc0b8
commit
700c8b7358
|
@ -162,24 +162,34 @@ define(function(require, exports, module) {
|
||||||
}
|
}
|
||||||
|
|
||||||
debug("proxy call %s", url);
|
debug("proxy call %s", url);
|
||||||
httpModule.get({
|
try {
|
||||||
path: parsedUrl.path,
|
httpModule.get({
|
||||||
hostname: parsedUrl.hostname,
|
path: parsedUrl.path,
|
||||||
port: parsedUrl.port,
|
hostname: parsedUrl.hostname,
|
||||||
headers: req.headers
|
port: parsedUrl.port,
|
||||||
}, function(request) {
|
headers: req.headers
|
||||||
if (request.statusCode >= 400)
|
}, function(request) {
|
||||||
handleError(request);
|
if (request.statusCode >= 400)
|
||||||
else if (isDir)
|
handleError(request);
|
||||||
serveListing(request);
|
else if (isDir)
|
||||||
else if (request.headers["content-type"] == "text/html")
|
serveListing(request);
|
||||||
serveHtml(request, parsedUrl.hostname, req);
|
else if (request.headers["content-type"] == "text/html")
|
||||||
else
|
serveHtml(request, parsedUrl.hostname, req);
|
||||||
serveFile(request);
|
else
|
||||||
}).on("error", function(err) {
|
serveFile(request);
|
||||||
|
}).on("error", function(err) {
|
||||||
|
metrics.increment("preview.failed.error");
|
||||||
|
next(err);
|
||||||
|
});
|
||||||
|
} catch (e) {
|
||||||
|
logError(new Error("httpModule.get threw unexpected error"), {
|
||||||
|
message: e.message,
|
||||||
|
url: url,
|
||||||
|
headers: req.headers
|
||||||
|
});
|
||||||
metrics.increment("preview.failed.error");
|
metrics.increment("preview.failed.error");
|
||||||
next(err);
|
return next(new error.BadRequest(e.message));
|
||||||
});
|
}
|
||||||
|
|
||||||
function handleError(request) {
|
function handleError(request) {
|
||||||
var body = "";
|
var body = "";
|
||||||
|
|
Ładowanie…
Reference in New Issue