使用模式的python json响应

使用模式的python json响应,python,json,schema,Python,Json,Schema,我有一个应用程序和一个使用json进行通信的服务器。我现在正试图尽可能地“pythonize”我的服务器代码(我是一个很长时间的C程序员,我担心我的python代码流看起来更像C,而不是pythonic)。 我有一大堆来回的信息。到目前为止,消息格式是“隐式”的,我并没有真正定义一个模式使其显式/可读/可验证等 通过对这个主题的搜索,我现在对如何定义传入消息模式、验证它等有了很好的理解。使用colander,我甚至可以直接将它带到一个类中。 然而,在出站端(即来自服务器的响应),我希望有一个类似

我有一个应用程序和一个使用json进行通信的服务器。我现在正试图尽可能地“pythonize”我的服务器代码(我是一个很长时间的C程序员,我担心我的python代码流看起来更像C,而不是pythonic)。 我有一大堆来回的信息。到目前为止,消息格式是“隐式”的,我并没有真正定义一个模式使其显式/可读/可验证等

通过对这个主题的搜索,我现在对如何定义传入消息模式、验证它等有了很好的理解。使用colander,我甚至可以直接将它带到一个类中。 然而,在出站端(即来自服务器的响应),我希望有一个类似的定义良好的结构和接口

我的问题是: 在构造响应数据时,如何使用已定义的出站模式?“C”的类比是使用结构。 本质上,我不想在我的代码中有任何地方做像这样丑陋的事情

r = dict(response_field=response_data)
HttpResponse(json.dumps(r))
因为他们我在动态地隐式创建我的格式

我宁愿使用模式作为构建响应的基础

有什么想法、建议、最佳实践指南吗?
谢谢

您可以使用常规Python类定义出站数据协定

或者您可以考虑定义公共API接口(传入和传出数据契约)。你有一个很好的选择,可以替代漏勺

如果你有结构化的数据关系数据库,那么你可以考虑XSD和XML..p> 如果结构和约束很简单,那么或可能就足够了