如何在 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 种不同类型的行为。不幸的是,您可能需要自己编写它,因为它尚不存在。如果你想去写它,那么你可以提出更多问题。
我正在开发一个带有 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 种不同类型的行为。不幸的是,您可能需要自己编写它,因为它尚不存在。如果你想去写它,那么你可以提出更多问题。