flask-restful 可以返回 Response 对象吗?

在使用 Flask-Restful 实现 REST API 时,我想返回一个 Flask 的Response对象,因为它灵活且易于使用。例如:


return Response(

            response=jsonify({

                "data": {

                    "import_id": import_id

                }

            }),

            status=201,

            mimetype="application/json"

        )

但看起来flask-restless 不支持这样的事情:


2019-08-05 08:52:30,077 werkzeug     INFO     172.21.0.1 - - [05/Aug/2019 08:52:30] "POST /imports HTTP/1.1" 500 -

2019-08-05 08:52:30,078 werkzeug     ERROR    Error on request:

Traceback (most recent call last):

  File "/usr/local/lib/python3.7/site-packages/werkzeug/serving.py", line 303, in run_wsgi

    execute(self.server.app)

  File "/usr/local/lib/python3.7/site-packages/werkzeug/serving.py", line 293, in execute

    for data in application_iter:

  File "/usr/local/lib/python3.7/site-packages/werkzeug/wsgi.py", line 507, in __next__

    return self._next()

  File "/usr/local/lib/python3.7/site-packages/werkzeug/wrappers/base_response.py", line 45, in _iter_encoded

    for item in iterable:

TypeError: 'Response' object is not iterable

如果有任何解决方法可以使用响应?如果没有,我怎样才能用flask-restfull返回一个 mimetype ?


牛魔王的故事
浏览 215回答 1
1回答

一只斗牛犬

jsonify()函数返回一个flask.Response()对象,同时json.dumps(obj)序列化为objJSON 格式的字符串。....from Flask import json, Response....   return Response(        response=json.dumps({            "data": {                "import_id": import_id            }        }),        status=201,        mimetype="application/json"    )
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python