Запустить промежуточное ПО в методе вызова, используя Python и uWSGI - PullRequest
1 голос
/ 05 февраля 2020

В какой-то момент я был сбит с толку, когда разрабатывал приложение для запуска на wsgi, а точнее на uwsgi.

После создания моего примера приложения:

class MyCustomApp():
    def __call__(self, environ, start_response):
        start_response('200 OK', [('Content-Type','application/json')])
        return "a".encode('utf-8')

application = MyCustomApp()

Все отлично работает как ожидается. Я использую класс вместо метода, мне нужно использовать его по другим причинам.

Теперь давайте перейдем к проблеме. Я использую промежуточное программное обеспечение, называемое beaker, и если я заменю свое приложение на:

application = SessionMiddleware(MyCustomApp(),options)

Все нормально, , но я не хочу изменять мой вызов , несмотря на то, что ради учебы и понимание.

Я хотел бы сделать следующее:

class MyCustomApp():
    def __call__(self, environ, start_response):
        start_response('200 OK', [('Content-Type','application/json')])
        ...
        here i want to implement SessionMiddleware without modify
        application = MyCustomApp()
        ...
        return "a".encode('utf-8')

application = MyCustomApp()

Но я ничего не пытаюсь, мое промежуточное ПО заменяет мою среду по умолчанию. Я sh они могли бы помочь мне понять и попытаться реализовать логику c выше.

...