promote GET error if Vector Tile cannot be fetched

This commit is contained in:
Joachim Ungar 2021-06-25 13:03:05 +02:00
parent c89a5ae029
commit d8e098d2d3

View file

@ -641,25 +641,30 @@ module.exports = {
const parts = url.parse(req.url); const parts = url.parse(req.url);
const extension = path.extname(parts.pathname).toLowerCase(); const extension = path.extname(parts.pathname).toLowerCase();
const format = extensionToFormat[extension] || ''; const format = extensionToFormat[extension] || '';
if (err || res.statusCode < 200 || res.statusCode >= 300) { // send empty response with status code 500 if vector tile server errors
if (res.statusCode >= 500) {
console.log('HTTP error when fetching vector tile', err || res.statusCode);
return false;
}
else if (err || res.statusCode < 200 || res.statusCode >= 300) {
// console.log('HTTP error', err || res.statusCode); // console.log('HTTP error', err || res.statusCode);
createEmptyResponse(format, '', callback); createEmptyResponse(format, '', callback);
return; return;
} } else {
const response = {};
if (res.headers.modified) {
response.modified = new Date(res.headers.modified);
}
if (res.headers.expires) {
response.expires = new Date(res.headers.expires);
}
if (res.headers.etag) {
response.etag = res.headers.etag;
}
const response = {}; response.data = body;
if (res.headers.modified) { callback(null, response);
response.modified = new Date(res.headers.modified);
} }
if (res.headers.expires) {
response.expires = new Date(res.headers.expires);
}
if (res.headers.etag) {
response.etag = res.headers.etag;
}
response.data = body;
callback(null, response);
}); });
} }
} }