有没有一种(简单的)方法可以从 HTTP Header 参数中提取子字符串?
Is there an (easy) way to extract a substring from a HTTP Header Parameter?
我正在使用分页调用休息 api,在响应中我在 HTTP Header 中得到 "next" link,格式如下:Link <https://aaaaaa/bbb/ccc/ddd/version/2.1.1/locations/?date_from=1601-01-01T00%3a00%3a00Z&date_to=2019-04-24T17%3a03%3a29Z&offset=100&limit=100
>; rel="next"
我可以轻松获取HTTP Header link参数的值
但是 Azure 逻辑应用程序中没有正则表达式,我可以使用它来进一步解析 < 和 >
之间的部分中的 link 值
一个选择是编写一个 Azure 函数来处理这个问题,但我正在寻找更简单的方法(如果可能的话)
{
"inputs": {
"name": "newLink",
"value": "@{outputs('HTTP')['headers']?['Link']}"
}
}
新的Link 变量现在包含 link 的完整值。
但我只需要 < 和 >
之间的部分
非常感谢任何关于如何将新Link 变量解析为我需要的(不使用 azure 函数)的提示。
您可以使用 spilt()
功能,如下所示:
@split(split(triggerOutputs()['headers']?['Link'],'<')[1],'>')[0]
设计器视图
代码视图
{
"definition": {
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"actions": {
"Response": {
"inputs": {
"body": "@split(split(triggerOutputs()['headers']?['Link'],'<')[1],'>')[0]",
"statusCode": 200
},
"kind": "Http",
"runAfter": {},
"type": "Response"
}
},
"contentVersion": "1.0.0.0",
"outputs": {},
"parameters": {},
"triggers": {
"manual": {
"inputs": {
"schema": {}
},
"kind": "Http",
"type": "Request"
}
}
}
}
邮递员电话:
我正在使用分页调用休息 api,在响应中我在 HTTP Header 中得到 "next" link,格式如下:Link <https://aaaaaa/bbb/ccc/ddd/version/2.1.1/locations/?date_from=1601-01-01T00%3a00%3a00Z&date_to=2019-04-24T17%3a03%3a29Z&offset=100&limit=100
>; rel="next"
我可以轻松获取HTTP Header link参数的值
但是 Azure 逻辑应用程序中没有正则表达式,我可以使用它来进一步解析 < 和 >
之间的部分中的 link 值一个选择是编写一个 Azure 函数来处理这个问题,但我正在寻找更简单的方法(如果可能的话)
{
"inputs": {
"name": "newLink",
"value": "@{outputs('HTTP')['headers']?['Link']}"
}
}
新的Link 变量现在包含 link 的完整值。 但我只需要 < 和 >
之间的部分非常感谢任何关于如何将新Link 变量解析为我需要的(不使用 azure 函数)的提示。
您可以使用 spilt()
功能,如下所示:
@split(split(triggerOutputs()['headers']?['Link'],'<')[1],'>')[0]
设计器视图
代码视图
{
"definition": {
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"actions": {
"Response": {
"inputs": {
"body": "@split(split(triggerOutputs()['headers']?['Link'],'<')[1],'>')[0]",
"statusCode": 200
},
"kind": "Http",
"runAfter": {},
"type": "Response"
}
},
"contentVersion": "1.0.0.0",
"outputs": {},
"parameters": {},
"triggers": {
"manual": {
"inputs": {
"schema": {}
},
"kind": "Http",
"type": "Request"
}
}
}
}
邮递员电话: