1

私はここでちょっと迷っています。ピラミッドビーカーを使用してPythonスクリプトを開始するにはどうすればよいですか。私はこのようにuwsgiを介してそれを呼び出すことを好みます:

uwsgi -s :9001  --module script

しかし、curlを使用して呼び出すと、

KeyError: 'beaker.session'

script.pyはこんな感じ

from beaker.middleware import SessionMiddleware
from pyramid.config import Configurator

def application(environ, start_response):
    # Get the session object from the environ
    session = environ['beaker.session']

    start_response('200 OK', [('Content-type', 'text/plain')])
    return ['returned']

# Configure the SessionMiddleware
session_opts = {
    'session.type': 'file',
    'session.cookie_expires': True,
}
#wsgi_app = SessionMiddleware(application, session_opts)
config = Configurator()
config.include('pyramid_beaker')
wsgi_app = SessionMiddleware(application, session_opts)

ありがとう!

4

2 に答える 2

2

uwsgi -s:9001 --module script:wsgi_app

必要なものです。そうでない場合、uWSGIはミドルウェアをスキップして「アプリケーション」関数を呼び出します。

于 2012-12-03T22:28:24.557 に答える
0

SessionMiddlewareをと組み合わせて使用​​しないでくださいpyramid_beaker。Pyramidは、セッションオブジェクトへの独自のインターフェイスをrequest.session自動的に提供します。

于 2012-12-03T22:41:30.880 に答える