Azure 如何在逻辑应用程序中获取查询参数?
我正在尝试向Azure logic app传递一个额外的查询参数,以便我可以在logic app工作流中处理以下数据 例如“%7BsiteURL%3AXYZ.sharepoint.com%2Fsites%2FXYZDev%7D”(编码字符串) 在HTTP操作中,我试图用下面的JSON模式处理上面传递的数据Azure 如何在逻辑应用程序中获取查询参数?,azure,azure-logic-apps,workflow-definition-language,Azure,Azure Logic Apps,Workflow Definition Language,我正在尝试向Azure logic app传递一个额外的查询参数,以便我可以在logic app工作流中处理以下数据 例如“%7BsiteURL%3AXYZ.sharepoint.com%2Fsites%2FXYZDev%7D”(编码字符串) 在HTTP操作中,我试图用下面的JSON模式处理上面传递的数据 { "kind": "Http", "inputs": { "schema": { "properties": {
{
"kind": "Http",
"inputs": {
"schema": {
"properties": {
"selectedData": {
"type": "string"
}
},
"type": "object"
}
} }
我没有得到selectedData值。我需要使用decodecomponentURI,然后使用JSON值
在这里找到错误
首先,您需要将查询参数添加到现有参数中,例如
https://xyz.logic.azure.com:443/workflows/id/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=code&SelectedData="%7BsiteURL%3AXYZ.sharepoint.com%2Fsites%2FXYZDev%7D"
https://xyz.logic.azure.com:443/workflows/id/triggers/manual/paths/invoke
?api-version=2016-10-01
&sp=%2Ftriggers%2Fmanual%2Frun
&sv=1.0
&sig=code
&SelectedData="%7BsiteURL%3AXYZ.sharepoint.com%2Fsites%2FXYZDev%7D"
然后,您应该能够在逻辑应用程序中使用
@triggerOutputs()['queries']['SelectedData']
如您所见,无需向Http触发器添加模式来获取查询参数上下文
- MSFT Azure Logicapp
- MSFT Logicapp工作流定义语言
- 截至2020-06-25 04:56:31的实时版本
- Logicapp开发者希望获得通过HTTP GET传入的URL查询参数的值
- 这个用例的解决方案是在这个StackOverflow线程中
- 然而,这个附加的答案重构了以前的解决方案
- 它解决了用MSFT工作流定义语言(在“代码”视图中查看logicapp时看到的基于JSON的源代码)构造表达式的问题
- 此URL扩展了此SO线程中的原始问题和另一个答案
- 这里我们期望
FirstName
和LastName
属性FaveColor
- 标准初始化:以下内容足以捕获所需的名称-值对
- 错误陷阱初始化:如果缺少任何所需的名称-值对,则以下内容足以捕获所需的名称-值对而不会引发错误(无错误捕获)
- 使用默认值错误陷阱初始化:以下内容足以错误陷阱初始化所需的名称-值对,并为任何缺少的值提供默认值
- 因此,原始解决方案可以重构如下
- 这种方法满足典型用例的要求,即:
- 获取该值(如果存在)
- 否则,请提供默认值,以及
- 如果参数被完全忽略,不要使整个logicapp崩溃
- 如果您直接编辑工作流定义语言,则可以使用
语法,但如果您在“表达式对话框”中输入它,则不能使用@{}