当前位置: 首页 > 面试题库 >

防止Flask jsonify对数据进行排序

刁茂才
2023-03-14
问题内容

每次使用时jsonify,我都会按字母顺序对JSON键进行排序。我不希望按键排序。我可以禁用在中进行的排序jsonify吗?

from flask import request, jsonify

@app.route('/', methods=['POST'])
def index():
    json_dict = request.get_json()
    user_id = json_dict['user_id']
    permissions = json_dict['permissions']
    data = {'user_id': user_id, 'permissions': permissions}
    return jsonify(data)

问题答案:

是的,您可以使用以下config属性对此进行修改:

app = Flask(__name__)
app.config['JSON_SORT_KEYS'] = False

但是,请注意,在文档中明确警告不要这样做:

默认情况下,Flask将以对密钥进行排序的方式序列化JSON对象。这样做是为了确保独立于字典的哈希种子,返回值将保持一致,以免浪费外部HTTP缓存。您可以通过更改此变量来覆盖默认行为。不建议这样做,但可以提高可缓存性的性能。



 类似资料:
  • 每次使用时,我都将JSON键按字母顺序排序。我不想把钥匙整理好。我可以禁用在中完成的排序吗?

  • 问题内容: 我有一个简单的ajax调用,看起来像这样: 的内容是: 当我运行代码并查看包含哪些数据时,它看起来像这样: “这是1” “这是2” “这是3” “这是4” “这是5” “这是6” …等等,您就明白了。为什么突然将其排序?如何关闭“自动分类”? 问题答案: 永远不能保证在JavaScript的反序列化和序列化之间保留对象键顺序。保证键顺序的唯一方法是提取对象的键并根据确定性标准对其进行排

  • 问题内容: 第一次尝试熊猫,我试图先按照索引对数据透视表进行排序,然后再对一系列值进行排序。 到目前为止,我已经尝试过: 按索引然后按值对数据透视表进行排序的正确方法是什么? 问题答案: 这是一个可以做您想要的解决方案: 结果将如下所示: 将其作为API方法内置到熊猫中会很好。虽然不确定应该是什么样。

  • 我们的代码使用Asyncresttemplate如下所示

  • 问题内容: 我有一个需要大量内存的程序,例如所有物理内存的2/3。运行一段时间后,我的操作系统开始将程序交换为hdd。但是我需要程序始终保持非常快的响应,因此我需要防止对该进程进行分页。 如何防止操作系统交换一个进程? 谢谢你的帮助! 问题答案: 在程序开始时,调用: (如果您没有该程序的源代码,则必须使用该程序来减少进程的消耗)。 请注意,这将增加进程失败进行内存分配的机会。

  • 问题内容: 我正在阅读有关MapReduce的内容,以下内容使我感到困惑。 假设我们有一个包含一百万个条目(整数)的文件,并且我们想使用MapReduce对它们进行排序。我了解的处理方式如下: 编写一个对整数排序的映射器函数。因此,框架会将输入文件分为多个块,并将它们分配给不同的映射器。每个映射器将彼此独立地对数据块进行排序。完成所有映射器后,我们会将其每个结果传递给Reducer,它将合并结果并