azure-logic-apps - 有没有一种(简单的)方法可以从 HTTP 标头参数中提取子字符串?
问题描述
我正在调用一个带有分页的rest api,在响应中我得到了HTTP Header中的“下一个”链接,格式如下: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
>; 相对=“下一个”
我可以轻松获取 HTTP Header 链接参数的值
但是 Azure 逻辑应用程序中没有正则表达式,我可以使用它来进一步解析 < 和 > 之间的部分中的链接值
一种选择是编写一个处理此问题的 Azure 函数,但我正在寻找更简单的东西(如果可能的话)
{
"inputs": {
"name": "newLink",
"value": "@{outputs('HTTP')['headers']?['Link']}"
}
}
newLink 变量现在包含链接的完整值。但我只需要 < 和 > 之间的部分
任何关于如何将 newLink 变量解析为我需要的变量(不使用天蓝色函数)的提示都非常感谢。
解决方案
您可以使用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"
}
}
}
}
邮递员电话:
推荐阅读
- python - 在哪里保存降价文件,以便它显示在本地主机上
- node.js - 在传递给 ejs 模板的数组上运行 forEach
- java - 试图计算创建的对象数量
- mailkit - 使用 mailkit 时收到错误 4.4.5 来自主机的连接过多
- node.js - 为什么在 mac os 上无法通过 npm install 安装 dualshock 驱动程序?
- python - 可视化决策树时列表索引超出范围
- excel - 从复选框菜单自动生成PowerPoint演示文稿
- arrays - 从 UIButton 操作更改 uitextField placeHolder
- google-sheets - 使用 Google 表格查询中位数和分组依据和位置
- spring - 我可以在一定的时间间隔内在 Spring Boot (JPA) 中创建实体吗