チェリーピーを使用して小さな Web アプリケーションを開発しており、データベースに保存されているデータからいくつかのグラフを生成したいと考えています。表を含む Web ページは簡単で、グラフ自体に matplotlib を使用する予定ですが、プレーン テキストではなく画像を返すようにメソッドのコンテンツ タイプを設定するにはどうすればよいですか? チェリーピーは結果を「嗅ぎ」、コンテンツタイプを自動的に変更しますか?
2465 次
2 に答える
6
response.headers
アプリの構成で、ツールを使用して、またはハンドラー メソッドで、応答の content-type ヘッダーを手動で設定する必要があります。
ハンドラー メソッドには、Cherrypy Tools wiki のMimeDecoratorページで説明されている 2 つのオプションがあります。
メソッド本体で:
def hello(self):
cherrypy.response.headers['Content-Type']= 'image/png'
return generate_image_data()
または、Cherrypy 3 でツール デコレータを使用します。
@cherrypy.tools.response_headers([('Content-Type', 'image/png')])
def hello(self):
return generate_image_data()
wiki では、カスタム デコレータも定義しています。
def mimetype(type):
def decorate(func):
def wrapper(*args, **kwargs):
cherrypy.response.headers['Content-Type'] = type
return func(*args, **kwargs)
return wrapper
return decorate
class MyClass:
@mimetype("image/png")
def hello(self):
return generate_image_data()
于 2009-11-18T23:38:28.113 に答える
0
応答のコンテンツ タイプを変更できます。
cherrypy.response.headers['Content-Type'] = "image/png"
于 2009-11-18T22:45:11.697 に答える