一个用于在 Python Web 服务中检查传入 JSON 数据的小工具

2018-02-24 11:37:18 +08:00
 Humbert

维护之前的代码时发现,Python 中没有类型检查 json 数据很容易传错,所以写了一个检查 JSON 的东西...不知道是不是重复造轮子...

github -> https://github.com/Humbertzhang/jsoncensor

pip install jsoncensor
from jsoncensor import JsonCensor
standard = {"test":"test"}
suspect = {"tes":"test"}
jc = JsonCensor(standard, suspect)
ret = jc.check()
if ret['statu'] != True:
	print(ret)

# 输出
# {'statu': False, 'error': 'KeyNameError', 'error_item': 'tes', 'should_be': 'test'}

求 star ฅʕ•̫͡•ʔฅ

2569 次点击
所在节点    程序员
5 条回复
Kilerd
2018-02-24 12:49:05 +08:00
这种 validation 不是检测结构是否一致,value 的 类型是否一致。

再强一点的,允许传入 value 的期望 type。

像你这种写定值的通用型不高把?
huahuajun9527
2018-02-24 14:14:03 +08:00
jsonschema ?
python 轮子 https://github.com/Julian/jsonschema
lolizeppelin
2018-02-24 17:16:25 +08:00
重复造轮子了 有成熟的库 而且有通用的校验结构
lolizeppelin
2018-02-24 17:18:09 +08:00
对就是 jsonschema
tairan2006
2018-02-24 20:22:30 +08:00
这个肯定有成熟库的…楼主没有认真搜

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/432160

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX