use new response module for index

This commit is contained in:
jomo 2015-04-20 22:19:57 +02:00
parent 8dc55442b1
commit 0b0882e63d
3 changed files with 13 additions and 9 deletions

View File

@ -16,7 +16,7 @@ var human_status = {
// +request+ a http.IncomingMessage // +request+ a http.IncomingMessage
// +response+ a http.ServerResponse // +response+ a http.ServerResponse
// +result+ an object with: // +result+ an object with:
// * status: see human_status, required // * status: see human_status, required for images
// * redirect: redirect URL // * redirect: redirect URL
// * body: file or message, required unless redirect is present or status is < 0 // * body: file or message, required unless redirect is present or status is < 0
// * type: a valid Content-Type for the body, defaults to "text/plain" // * type: a valid Content-Type for the body, defaults to "text/plain"
@ -41,11 +41,14 @@ module.exports = function(request, response, result) {
"Content-Type": result.type || "text/plain", "Content-Type": result.type || "text/plain",
"Cache-Control": "max-age=" + config.browser_cache_time + ", public", "Cache-Control": "max-age=" + config.browser_cache_time + ", public",
"Response-Time": Date.now() - request.start, "Response-Time": Date.now() - request.start,
"X-Storage-Type": human_status[result.status],
"X-Request-ID": request.id, "X-Request-ID": request.id,
"Access-Control-Allow-Origin": "*" "Access-Control-Allow-Origin": "*"
}; };
if (result.status) {
headers["X-Storage-Type"] = human_status[result.status];
}
if (result.err) { if (result.err) {
logging.error(result.err); logging.error(result.err);
} }

View File

@ -3,17 +3,16 @@ var path = require("path");
var jade = require("jade"); var jade = require("jade");
// compile jade // compile jade
var index = jade.compileFile(path.join(__dirname, "../views/index.jade")); var index = jade.compileFile(path.join(__dirname, "..", "views", "index.jade"));
module.exports = function(req, res) { module.exports = function(req, callback) {
var html = index({ var html = index({
title: "Crafatar", title: "Crafatar",
domain: "https://" + req.headers.host, domain: "https://" + req.headers.host,
config: config config: config
}); });
res.writeHead(200, { callback({
"Content-Length": Buffer.byteLength(html, "UTF-8"), body: html,
"Content-Type": "text/html; charset=utf-8" type: "text/html; charset=utf-8"
}); });
res.end(html);
}; };

View File

@ -70,7 +70,9 @@ function requestHandler(req, res) {
try { try {
switch (local_path) { switch (local_path) {
case "": case "":
routes.index(req, res); routes.index(req, function(result) {
response(req, res, result);
});
break; break;
case "avatars": case "avatars":
routes.avatars(req, function(result) { routes.avatars(req, function(result) {