ラップされた関数の戻り値は (1 つの引数として) に渡されflask.make_response()
ます。通常のFlask ビューが返すことができるものは何でも受け入れられます。デコレーターは、基本的にこの Flask スニペットと同じです。
Flask-restfulResource
は のサブクラスであるため、ここでメソッドにデコレータを直接配置しないflask.views.MethodView
でください。ビューの装飾に記載されているように、リストである特別なクラス属性にビュー デコレーターをリストする必要があります。decorators
class HelloWorld(restful.Resource):
decorators = [cors.crossdomain(origin='*')]
def get(self):
return {'hello': 'world'}
そしてFlaskは、によって返された実際のビューメソッドにビューを適用しますHelloWorld.as_view()
。これは、ルートをビューにディスパッチするときにFlaskが実際に呼び出すものです。
それらをメソッドに直接適用すると、メソッドがrestful.Resource
JSONへのエンコードに適したPythonデータ構造を返すことを期待しているため、サーバーはディスパッチャーを混乱させるだけであり、cors.crossdomain()
とにかく返されるものではありません。