关于 Python 后端验证参数 的界限

2020-04-22 11:10:35 +08:00
 sichuyoudang312
关于参数校验,后端有简单的统一校验格式,主要针对参数类型和长度,其他的又不值得统一的就用 lambda 进行校验,如下,只需

{
"name": ("名称", "optional str 30"),
"limit": ("每次获取条数", lambda x: x is None or x in range(101)),
"offset": ("分页偏移量", lambda x: x is None or x >= 0)
}

像 limit 我设置了 100 以内的数值型,offset 因为总数据可能很大,就没设置上限 , 结果测试人员 非要验证 offset 字符串,然后出现异常,我是不想改的,所以想问各位验证参数的界限是怎样的
3368 次点击
所在节点    Python
23 条回复
hell0v2
2020-04-22 19:05:04 +08:00
一般业务层做处理,不过接口也要 catch 住吧;反正不管怎么协调,前端输入异常的情况下,要有合理的返回
forkc
2020-04-22 19:10:04 +08:00
wtform
johnsona
2020-04-24 18:12:19 +08:00
@Vegetable 我猜也是,我用的框架可以把 500 注册下来,然后改写返回格式,状态码之类的。比较好奇是统一 200,然后 json 格式统一,是为了方便前端判断去解决吗?抛开日志不说,肯定会打日志

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

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

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

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

© 2021 V2EX