2016-11-11 5 views
1

CherryPyでカスタムレスポンスを返すにはどうすればいいですか?CherryPyでカスタムレスポンスを返す方法

ステータスコードと本文を制御したいと思います。私はこれを行うことができ、フラスコ内の例えば

:ここ

return Response(response=message, status=200, mimetype="application/json")

+0

「cherrypy.response」で可能です。 jsonでは '@ cherrypy.tools.json_out()'デコレータをリクエストハンドラに適用してdictを返すこともできます。 – webKnjaZ

+0

これに対応するドキュメントがありますが、レスポンスを操作する際に何も見つかりませんでした。 –

+0

https://github.com/GDG-Ukraine/gdg.org.ua/blob/9a910e74d2ea73e96b3feec02d8412c95e67dbe4/src/GDGUkraine/errors.py#L44- L46 https://github.com/GDG-Ukraine/gdg.org.ua/blob/f682470f3d027ec41b6aeee9750c999dc535afec/src/GDGUkraine/rest_controller.py#L452-L459 – webKnjaZ

答えて

1

はここ

result={ 
    'some': "random", 
    'data': [] 
} 
return datastore.json.dumps(result) 

カスタムJSONエンコードされたデータパケットを返すの一例である生成されたPDFを返す例です。 (ヘッダーの変更)

cherrypy.response.headers['Content-Type'] = 'application/pdf' 
cherrypy.response.headers['Content-Disposition'] = 'inline;filename="report.pdf"' 
return pdfblob 

あなたはuldもこれをチェックしてください: http://www.programcreek.com/python/example/2969/cherrypy.response