如何在Power Automate中对URI部分使用encodeUriComponent编码
在Power Automate中对HTTP请求的id参数进行URI编码的解决方案
问题说明
在Power Automate发起HTTP请求时,URI需要使用返回JSON中的id参数,但需要对其进行URI编码。尝试使用encodeUriComponent表达式时,无法通过选择器选中目标id参数,需要手动实现编码逻辑。
解决步骤
1. 先解析JSON响应
如果id来自之前HTTP请求返回的JSON数据,首先添加解析JSON动作:
- 将HTTP请求的输出作为解析动作的输入内容
- 使用示例负载(即你提供的JSON响应)自动生成schema,确保后续能正确引用字段
2. 手动编写编码表达式
当无法通过可视化选择器选中id时,直接在URI中手动输入encodeUriComponent表达式,根据场景选择对应写法:
- 单条数据场景(取第一个元素的id):
encodeUriComponent(body('解析JSON')?['elements'][0]?['id']) - 循环遍历场景(在"应用到每一个"动作中):
encodeUriComponent(items('应用到每一个')?['id'])
3. 插入到HTTP请求的URI中
将编码表达式直接嵌入URI,示例格式:
https://your-api-endpoint/resource/@{encodeUriComponent(body('解析JSON')?['elements'][0]?['id'])}
翻译后的JSON响应
{ "分页信息": { "起始位置": 0, "数量": 10, "链接": [], "总数": 5 }, "元素列表": [ { "作者是否禁止转发": false, "创建时间": 1704885697456, "生命周期状态": "已发布", "最后修改时间": 1704887404834, "可见性": "公开", "发布时间": 1704885697456, "作者": "urn:li:organization:101410019", "id": "urn:li:share:7150808899816669184", "分发设置": { "信息流分发": "主信息流", "第三方分发渠道": [] }, "内容": { "媒体": { "替代文本": "", "id": "urn:li:image:D5622AQEcyXncoACqYw" } }, "评论": "单图", "生命周期状态信息": { "是否被作者编辑": false } }, { "作者是否禁止转发": false, "生命周期状态": "已发布", "创建时间": 1704885749848, "最后修改时间": 1704885749848, "可见性": "公开", "发布时间": 1704885749848, "作者": "urn:li:organization:101410019", "id": "urn:li:share:7150809119690510336", "分发设置": { "信息流分发": "主信息流", "第三方分发渠道": [] }, "评论": "无图", "生命周期状态信息": { "是否被作者编辑": false } }, { "作者是否禁止转发": false, "创建时间": 1704885735784, "生命周期状态": "已发布", "最后修改时间": 1704885735832, "可见性": "公开", "发布时间": 1704885735784, "作者": "urn:li:organization:101410019", "id": "urn:li:ugcPost:7150809060592771072", "分发设置": { "信息流分发": "主信息流", "第三方分发渠道": [] }, "内容": { "多图": { "图片": [ { "替代文本": "", "id": "urn:li:image:D5622AQHI1OTfTOM0ew" }, { "替代文本": "", "id": "urn:li:image:D5622AQFrLq7yW1xpIw" }, { "替代文本": "", "id": "urn:li:image:D5622AQGQMzLv9E200A" } ] } }, "评论": "多图", "生命周期状态信息": { "是否被作者编辑": false } } ] }
内容的提问来源于stack exchange,提问作者Divyesh Jesadiya
相关产品推荐
相关产品推荐

