Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Flask RESTful返回不需要是json.dumps()_Python_Json_Rest_Flask_Flask Restful - Fatal编程技术网

Python Flask RESTful返回不需要是json.dumps()

Python Flask RESTful返回不需要是json.dumps(),python,json,rest,flask,flask-restful,Python,Json,Rest,Flask,Flask Restful,我正在尝试将我的REST服务器从Flask切换到Flask RESTful 让我感到困惑的是,我正在使用改型来读取客户机上的数据,但在第一个实例中,我需要使用json.dumps(数据),而在第二个实例中,我只需要返回 有人能解释一下吗?在两位代码中,数据都是一个列表 第一个示例就是烧瓶 data = [] for row in cur.fetchall(): out = { "list_id": row[0], "list_name": row[1]

我正在尝试将我的REST服务器从Flask切换到Flask RESTful

让我感到困惑的是,我正在使用改型来读取客户机上的数据,但在第一个实例中,我需要使用json.dumps(数据),而在第二个实例中,我只需要返回

有人能解释一下吗?在两位代码中,数据都是一个列表

第一个示例就是烧瓶

data = []
for row in cur.fetchall():
    out = {
        "list_id": row[0],
        "list_name": row[1]
    }
    data.append(out)
cur.close()
return json.dumps(data)
第二个示例烧瓶RESTful

class UserLists(Resource):
def get(self, user_id):
    results = Lists.query.filter(Lists.user_id == user_id).all()
    data = [{'list_id': list_item.id, 'list_name': list_item.name} for list_item in results]
    return data

Flask RESTful负责为您编码响应。它不仅限于返回JSON,还将根据从客户端请求的格式(通过
Accept
request头设置)编码为支持的格式

请参阅以了解如何添加除默认JSON输出之外的格式支持

因此,对于Flask RESTful响应,您需要返回一个Python结构,而不是JSON编码的数据,因为如果您希望将来支持这种格式,这将阻止生成XML或CSV响应