This example renders an HTML template with all request data.
Request
{
basePath = "/template";
body = "/nix/store/5n90qy4wsm9r91m8p8dslp37hsmlna17-body";
bodyHash = "sha256-47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=";
error = null;
headers = {
Accept = [
"*/*"
];
Accept-Encoding = [
"gzip, br, zstd, deflate"
];
User-Agent = [
"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"
];
};
host = "origin.nixpresso.dev";
meta = {
description = "Render an HTML template with all request data";
evalArgs = [ ];
evalCacheIgnore = {
args = [
"remoteAddr"
];
headers = [ ];
};
pty = false;
};
method = "GET";
options = {
allowStore = true;
allowedModes = [
"serve"
"log"
"derivation"
];
allowedPaths = [ ];
allowedTypes = [
"string"
"path"
"derivation"
];
basePath = "";
evalCache = true;
handler = "path:/nix/store/irhb7z9x220ppmg4c39404s57yd8nl01-source#handlers.aarch64-linux.default";
maxBuildTime = "10m0s";
maxEvalTime = "5m0s";
maxRequestBytes = 33554432;
maxRequestTime = "5m0s";
maxResponseBytes = 134217728;
maxRunTime = "10m0s";
nixArgs = [ ];
runArgs = [ ];
verbose = 10;
};
path = "";
proto = "HTTP/2.0";
query = { };
remoteAddr = "216.73.216.0:32793";
tls = {
cipherSuite = "TLS_AES_128_GCM_SHA256";
didResume = false;
handshakeComplete = true;
negotiatedProtocol = "h2";
peerCertificates = [ ];
serverName = "origin.nixpresso.dev";
verifiedChains = [ ];
version = "TLS 1.3";
};
uri = "/template";
}