(機械翻訳) pyramid.wsgi
¶
-
wsgiapp
(wrapped)[ソース]¶ DecoratorはWSGIアプリケーションを:app: Pyramid:term:` view callable`に変換します。このデコレータは、アプリケーションが呼び出される前にWSGI環境*内の `` PATH_INFO``と `` SCRIPT_NAME``のフィックスアップが*実行されていないので、:func: `pyramid.wsgi.wsgiapp2`デコレータとは異なります。
例えば、 `` views.py``モジュールで次のようにします:
@wsgiapp def hello_world(environ, start_response): body = 'Hello world' start_response('200 OK', [ ('Content-Type', 'text/plain'), ('Content-Length', len(body)) ] ) return [body]
次の呼び出しを許可します:meth: pyramid.config.Configurator.add_view
from views import hello_world config.add_view(hello_world, name='hello_world.txt')
`` wsgiapp`デコレータはWSGIアプリケーションの結果を:term: Response`に変換し、WSGIアプリケーションが:app: Pyramid`ビューであるかのようにapp: `Pyramid`に返します。
-
wsgiapp2
(wrapped)[ソース]¶ DecoratorはWSGIアプリケーションを:app: Pyramid`ビューで呼び出し可能にします。このデコレータは、アプリケーションが呼び出される前にWSGI環境*内の ` PATH_INFO``と `` SCRIPT_NAME``のフィックスアップが実行されているので、:func: `pyramid.wsgi.wsgiapp`デコレータとは異なります。
たとえば、 `` views.py``モジュールで次のようにします:
@wsgiapp2 def hello_world(environ, start_response): body = 'Hello world' start_response('200 OK', [ ('Content-Type', 'text/plain'), ('Content-Length', len(body)) ] ) return [body]
次の呼び出しを許可します:meth: pyramid.config.Configurator.add_view
from views import hello_world config.add_view(hello_world, name='hello_world.txt')
`` wsgiapp2``デコレータはWSGIアプリケーションの結果をResponseに変換し、WSGIアプリケーションが:app: Pyramid`ビューであるかのようにapp: Pyramid`に返します。 WSGI環境にある `` SCRIPT_NAME``と `` PATH_INFO``の値は、アプリケーションが呼び出される前に修正されています。特に、新しいWSGI環境が生成され、 `` wsgiapp2``に渡されたリクエストの:term: subpath`が新しいリクエストの PATH_INFO``として使われ、サブパスに先行する全てが `` SCRIPT_NAME``。新しい環境は、下流のWSGIアプリケーションに渡されます。