如何在 Play Framework 中验证 Path 变量

How to validate Path variable in Play Framework

我正在开发一个带有 play 框架的 scala 应用程序。我使用 play json schema validator 验证请求正文并且验证工作完美, 我正在使用过滤器验证路径变量,但我的问题是我必须获取每个模式并尝试匹配我收到的 url 然后我必须将它们拆分成数组然后我需要执行我的验证,它是很难做到,它需要大量代码才能验证路径变量,我有大约 80 API 每个 api 都有不同的路径变量,创建 80 个过滤器或 80 个动作生成器是不合逻辑的,我想知道是否有类似 play json 模式验证器的东西,或者我可以合并它以获取另一个属性。 orderId 应该通过路径变量传递这里是我的模式

{
  "properties": {
    "vouchersCount": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "orderId": {
      "type": "integer",
      "minimum": 50,
      "maximum": 90,
      "in": "path"
    },
    "comments": {
      "type": "string"
    }
  },
  "required": [
    "vouchersCount",
    "comments",
    "orderId"
  ]
}

感谢任何建议

我不认为已经有什么东西可以为你做这件事。您可能需要编写自己的逻辑。您不需要编写 80 个过滤器或 80 个动作构建器,您可以编写一个加载您的模式,然后使用它来产生 80 种不同类型的行为。不幸的是,您可能需要自己编写它,因为它尚不存在。如果你想去写它,那么你可以提出更多问题。