如何实现自定义JSON验证器

时间:2019-09-04 08:47:14

标签: json go

我需要在很多情况下测试我的系统。对于每种情况,我将定义请求和预期响应,然后进行请求并比较返回的响应和预期响应。

例如,REST API / add返回a + b。

请求:

{
    "a":1,
    "b":2
}

预期的响应(验证器样式说明,可能是其他原因,因为我不知道是否有更好的解决方案):

{
    "err_code":"int, required, eq=0"
    "data":"int, required, eq=3"
}

返回的响应:

success
{
    "err_code":0,
    "data":3
}

failure
{
    "err_code":500,
    "data":0
}

所以我的问题是,如何使用一些struct / fied / type / value描述实现自定义json验证器,还是有更好的解决方案?

go-playground/validator需要在结构级别定义所有内容,我需要检查json是否符合我的描述性json(如上所述)。

1 个答案:

答案 0 :(得分:1)

最后,我使用正则表达式来实现我的简单json验证器,这是我的仓库https://github.com/seaguest/jsonvalidator

仍然需要做很多事情,但是确实可以满足我的需求。