Power Automate Flow - 更改响应正文并将 /n 替换为 /r/n

问题描述 投票:0回答:1

我正在 Power Automate 上创建一个流程,该流程调用 2 个不同的 API,第一个 API 检索数据(响应正文),并将其 POST 到第二个 API。我a,使用自定义 HTTP 连接器。

第一个调用运行良好,我能够获取响应的数据并将其发送到第二个 API,但是,最后一个 API 需要特定格式的数据并且不喜欢换行符 (\ln),我需要将它们替换为 \ln .

到目前为止,我已尝试循环数据并使用“应用于每个”选项以及替换值的条件,但它总是失败。 (我不确定我在做什么或使用可用操作的最佳方式是什么)

这是我正在使用的查询:

replace(replace(outputs('HTTP_call_to_the_Source')?['body'], '/n', ''), '/n', '/r/n')

我得到的错误是:

模板操作“Apply_to_each_2”执行失败:结果 'foreach' 表达式的求值 '@replace(body('HTTP_call_to_the_Source'), '/n', '/r/n')' 的类型 '细绳'。结果必须是有效的数组。

不知道如何解决这个问题,并且文档对我没有多大帮助。

预先感谢您的帮助。

请参阅下面此流程的屏幕截图:

power-automate
1个回答
0
投票

首先,我更改了操作类型,而不是应用到每个,我使用了 Compose,然后添加了以下函数:

replace( outputs('HTTP_call_to_the_Source')?['body'], decodeUriComponent('%0A'), decodeUriComponent('%0D%0A') )

这成功地将所有

\n
替换为
\r\n


此答案已作为问题编辑发布已解决! - Power Automate Flow - 更改响应正文,并通过 CC BY-SA 4.0 下的 OP cacharry 将 /n 替换为 /r/n

© www.soinside.com 2019 - 2024. All rights reserved.