exports.app = function(env) { var req = new Request(env), res = new Response(); if (req.isPost()) { var params = req.params(); for (var i in params) { res.setHeader("Content-Type", "text/plain"); if (typeof params[i] === "string") res.write(i + " => " + params[i] + "\n"); else { for (var j in params[i]) res.write("> " + j + " => " + params[i][j] + "\n"); } } } else { res.write('<form action="" method="post" enctype="multipart/form-data">') res.write('<input type="file" name="foo" value="">'); res.write('<input type="text" name="bar" value="baz">'); res.write('<input type="submit" value="Upload">'); res.write('</form>'); } return res.finish(); }
exports.handle = function(env) { var request = new Request(env); var response = new Response(); var zazlenv = {}; zazlenv["REQUEST_METHOD"] = env["REQUEST_METHOD"]; zazlenv["URL_PATH"] = env["PATH_INFO"]; zazlenv["PATH_INFO"] = env["PATH_INFO"]; zazlenv["QUERY_STRING"] = env["QUERY_STRING"] || ""; zazlenv["CONTENT_TYPE"] = env["CONTENT_TYPE"] || ""; zazlenv["CONTENT_LENGTH"] = env["CONTENT_LENGTH"] || ""; zazlenv["SERVER_NAME"] = env["SERVER_NAME"] || ""; zazlenv["SERVER_PORT"] = env["SERVER_PORT"] || ""; zazlenv["SERVER_PROTOCOL"] = env["SERVER_PROTOCOL"] || ""; zazlenv["GATEWAY_INTERFACE"] = "CGI/1.1"; zazlenv["SERVER_SOFTWARE"] = "Jack/Zazl/0.1"; zazlenv["PATH_TRANSLATED"] = env["PATH_INFO"] || ""; zazlenv["REMOTE_HOST"] = env["REMOTE_ADDR"] || ""; zazlenv["REMOTE_ADDR"] = env["REMOTE_ADDR"] || ""; zazlenv["REMOTE_USER"] = "******"; zazlenv["AUTH_TYPE"] = "Unknown"; zazlenv["jsengine"] = "commonjs"; for (var i in env) { if (i.indexOf("HTTP_") == 0) { zazlenv[i] = env[i]; } } zazlenv["PARAMETERS"] = request.params(); var responseJson = dtlapp(zazlenv); if (responseJson != null) { var responseData = eval("("+responseJson+")"); response.status = responseData.status; for (var headerName in responseData.headers) { response.setHeader(headerName, responseData.headers[headerName]); } response.write(responseData.renderedResponse); return response.finish(); } else { var fileResponse = fileHandler(env); if (fileResponse.status == 404) { fileResponse = zazlFileHandler(env); } return fileResponse; } }