Devolver Páginas HTML
Devolver texto plano es un comienzo, pero las aplicaciones web necesitan HTML. El bloque html: de Clean Language te permite escribir HTML directamente dentro de una función — las variables se interpolan automáticamente y el resultado es simplemente un string que puedes devolver.
El bloque html: convierte el marcado sangrado en un string devuelto:
functions:\n string page_shell(string title, string body_content)\n html:\n \n \n \n \n {title} \n \n \n \n {!body_content}\n \n Las variables entre llaves se interpolan. Usa {title} para texto que debe ser escapado como HTML — seguro para entradas del usuario. Usa {!body_content} cuando la variable ya contiene HTML de confianza que no debe ser doblemente escapado.
Llama al helper en tu endpoint para construir una página completa:
endpoints server:\n GET "/" :\n string content = "Welcome!
Built with Clean Language.
"\n string page = page_shell("Welcome", content)\n return http.respond(200, "text/html", page)\n\n GET "/about" :\n string content = "About
A Clean Language web app.
"\n string page = page_shell("About", content)\n return http.respond(200, "text/html", page)GET / → 200, full HTML page with title and content\nGET /about → 200, full HTML page with about contentAmbas rutas comparten el mismo helper page_shell — cambia el encabezado o el pie de página una vez y todas las páginas se actualizan. Este es el modelo de componentes de Clean Language: funciones de string reutilizables.
Resumen rápido
- El bloque html: devuelve un string de HTML — es azúcar sintáctico, no un tipo especial
- La interpolación con llaves auto-escapa HTML — segura para valores del usuario
- La interpolación con llaves y ! inserta HTML sin procesar — úsala solo para contenido que controlas
- Construye helpers en un bloque functions: y compártelos entre endpoints