使用Yesod验证JSON请求的最佳实践

前端之家收集整理的这篇文章主要介绍了使用Yesod验证JSON请求的最佳实践前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用Yesod编写 JSON RESTFul服务,需要实现请求验证.
因为服务接受JSON,我不能使用Yesod.Form.我喜欢 scalaz validation使用的方式,但我在Haskell中找不到这样的方法.

是否有最佳实践来实现验证,允许回答结构化错误消息,如下所示:

请求

{
    "birthDate": "2017.07.14","count": "three","kind": "baz","entity": {
        "id": -1
    }
}

响应

{
    "errors": {
        "birthDate": "Date should be less than 2014.05.25",// current date
        "count": "should be a number","kind": "must be one of [foo,bar]","entity": {
            "id": "Entity with id -1 not found"
        }
    }
}

解决方法

我建议使用aeson的本机解析功能,它将同时解析传入的JSON并将其转换为Haskell数据结构.

猜你在找的JavaScript相关文章