ツイストでシンプルなサーバーを作成しています。構成値を yaml ファイルに保存したいと考えています。アプリ固有の構成でねじれたサービスまたはアプリケーションを構成する例が見つかりません。
私が提供している実際の Resource オブジェクトはリクエストごとに作成されるため、明らかに、これは構成ファイルを読み取るのに適切な場所ではありません。
おそらく工場で構成ファイルを読み取り、Site をサブクラス化してリソースに渡しますか? どこにも文書化されたパターンが見つからないようです。
これが私のコードです:
#!/usr/bin/env python
from twisted.internet import reactor
from twisted.web.server import Site
from twisted.web.resource import Resource
import yaml
def load_config():
return yaml.load(file('./test/config_file.yaml', 'r'))
# how can I make this resource have access to my config?
class ScaledImage(Resource):
isLeaf = True
def render_POST(self, request):
return """
<h1>image scaled</h1>
"""
factory = Site(ScaledImage())
reactor.listenTCP(8000, factory)
reactor.run()