bottle.py
( Der Name hat einen Sinn! Ich muss nur noch herausfinden, welchen )
Ich werde es in Zukunft für meine eigenen Web-Projekte verwenden und auf diese Weise ausgiebig testen und weiter verbessern. Das nächste Update wird also nicht lange auf sich warten lassen. Das ganze steht unter einer MIT Lizenz und ist demnach ziemlich offen. Über Feedback, Betatester und Forks würde ich mich freuen
Und wer zu faul ist, auf den Link da oben zu klicken, kann sich eine kleine Beispiel-Applikation auch gleich hier ansehen:
Code: Alles auswählen
from bottle import route, run, request, response, send_file, abort
@route('/')
def hello_world():
return 'Hello World!'
@route('/hello/:name')
def hello_name(name):
return 'Hello %s!' % name
@route('/hello', method='POST')
def hello_post():
name = request.POST['name']
return 'Hello %s!' % name
@route('/static/:filename#.*#')
def static_file(filename):
send_file(filename, root='/path/to/static/files/')
@route('/counter')
def counter():
old = request.COOKIE.get('counter',0)
new = int(old) + 1
response.COOKIE['counter'] = new
return "You viewed this page %d times!" % new
@route('/private')
def private():
if request.POST.get('password','') != 'secret':
abort(401, 'Go away!')
return "Welcome!"
run(host='localhost', port=80)