douchu4048 2017-05-08 15:10
浏览 35
已采纳

如何针对摇摇欲坠的模式验证JSON模式的实例?

I have a JSON payload (request or response) and I want to validate that instance against a swagger schema that I have. How do I do that?

Please note that I am not trying to validate if my spec is an OpenAPI/Swagger spec.

I'd like to achieve this without the use of external JSON validators. I am also trying to achieve this in Go (specifically go-openapi)

Thanks.

  • 写回答

1条回答 默认 最新

  • duanmianhong4893 2017-05-08 15:33
    关注

    You need to get a hold of the schema that defines your validation rules, that's typically stored in the swagger spec definition property.

    And you need to get your model (json data structure, can be a map or a struct). Here's an example:

    var model models.User
    json.Unmarshal(bytes, &model)
    
    var spec *spec.Swagger = getSpec()
    schema := spec.Definitions["User"]
    
    if err := validate.AgainstSchema(schema, &model, strfmt.Default); err != nil {
      return err
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?