WSGIとしても、CGIとしても動作する環境変数表示アプリ
WSGI アプリは iterable を返すという規約が面白い. ジェネレータ関数で iterable が簡単に返せる Python ならではだなあ.
#!/usr/bin/env python # -*- coding: utf-8 -*- def application(environ, start_response): status = '200 OK' response_headers = [('Content-type','text/plain')] start_response(status, response_headers) return ('%s: %s\n' % (i, environ[i]) for i in environ) if __name__ == '__main__': from wsgiref.handlers import CGIHandler CGIHandler().run(application)
WSGI アプリのテストはこんな感じで.
>>> from wsgi_test import application >>> from wsgiref.simple_server import make_server >>> >>> make_server('', 8000, application).serve_forever()