json - 如何为 Azure 逻辑应用的触发器 JSON 架构中的字段设置默认值?
问题描述
我正在使用触发器设置 Azure 逻辑应用工作流,但目前无法在 JSON 架构中为此类触发器的字段定义默认值。
我已启用 JSON 模式验证和必填字段,如下所述:https ://www.danrigby.com/2018/08/27/enable-schema-validation-and-required-fields-in-logicapps/
我的 JSON Schema 目前如下所示:
{
"anyOf": [
{
"required": [
"delay"
]
},
{
"required": [
"startTime"
]
}
],
"properties": {
"callbackUrl": {
"type": "string"
},
"delay": {
"default": 0,
"minimum": 0,
"type": "integer"
},
"startTime": {
"type": "string"
}
},
"required": [
"callbackUrl"
],
"type": "object"
}
我也尝试过替换default
但defaultValue
没有运气。
我希望delay
在不存在时填充为 0,而是将其解释为null
在 Azure 逻辑应用工作流中,从而导致无法遵循布尔条件,例如delay is greater than 0
因为它们不希望对空值进行评估。
解决方案
我相信 JSON Schema 在这里仅用于验证,因为它在许多情况下都是如此。官方文档default
中提到的许多实现都忽略了该属性。
相反,您可以在需要默认值的地方使用此表达式null
if (equals(triggerBody()?['delay'], null), triggerBody()?['delay'], 0)
推荐阅读
- php - 在会话中添加号码无效
- c# - 基础视图的 Xamarin 绑定属性
- c# - 我们真的需要在 Repository 或 UnitOfWork 类中实现 IDisposable 吗?
- javascript - 在 Javascript 中从 window.print 保存 PDF
- docker - 为什么 log4j 在 windows 和 Linux 上都能正常工作,同样的配置在 docker 上却不行?
- python - 在jupyter中播放音频,在for循环中
- ios - 对 xib.file 中使用的 UIPickerViewData 的引用
- angular - Angular Keycloak 服务初始化
- python - 无法调试 pywin32 服务
- go - go ++ 运算符需要互斥体吗?