Written by: on 05/05/2008 @ 10:44

Tiembla IIS !! je ,je , interesante articulo de Oren Eini, en el que nos muestra como programar un servidor web en pocas lineas de codigo en Boo, un leguaje que empezo como experimento inspirado en Python, pero que cada vez coje mas fuerza, dada la comunidad que le acompaña.

 

import System.Net
import System.IO

if argv.Length != 2:
	print "You must pass [prefix] [path] as parameters"
	return

prefix = argv[0]
path = argv[1]

if not Directory.Exists(path):
	print "Could not find ${path}"
	return

listener = HttpListener()
listener.Prefixes.Add(prefix)
listener.Start()

while true:
	context = listener.GetContext()
	file = Path.GetFileName(context.Request.RawUrl)
	fullPath = Path.Combine(path, file)
	if File.Exists(fullPath):
		context.Response.AddHeader("Content-Disposition","attachment; filename=${file}")
		bytes = File.ReadAllBytes(fullPath)
		context.Response.OutputStream.Write(bytes, 0, bytes.Length)
		context.Response.OutputStream.Flush()
		context.Response.Close()
	else:
		context.Response.StatusCode = 404
		context.Response.Close()

 

 

Para compilarlo solo

# booi prueba.boo http://localhost:8085/ ~/Desktop/

 

Catogories: Otros

Leave a Reply