هل يمكنني تحريك beaker.sessionmiddleware للتعامل مع الطريقة بطريقة ما؟
سؤال
إنه قبيح بعض الشيء تسقط العديد من خطوط الكود "__main__"
. هل يمكن لأي شخص أن يعطيني نصيحة لكيفية نقل برنامج SessionMiddleware إلى طريقة المقبض؟ يجب أن ألاحظ أنني أستخدم الجلسة في CorexMlParser. شكرا مقدما !
def handle(environ, start_response):
req = webob.Request(environ)
c = CoreXmlParser(req)
resp = webob.Response(body=c(), charset = 'utf-8', status='200 OK', \
request=req, content_type='text/xml')
resp(environ, start_response)
return resp.app_iter
if __name__ == '__main__':
#parse config file for session options
app = SessionMiddleware(handle, some_session_opts_here)
from flup.server.fcgi import WSGIServer
WSGIServer(app).run()
المحلول
لست متأكدًا من أنني أفهم لماذا تحاول نقل سطر واحد فقط. إذا كنت تريد تقليل كمية الأشياء في "__main__
"، لماذا لا تحرك كل ذلك فقط"#parse config file
"الأشياء في وظيفة منفصلة؟
def handle(environ, start_response):
# same as before
def create_app(config_file):
#parse config file for session options
return SessionMiddleWare(handle, some_session_opts_here)
if __name__ == '__main__':
app = create_app(config_file)
from flup.server.fcgi import WSGIServer
WSGIServer(app).run()
لا تنتمي إلى StackOverflow