You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ADF管道如何动态获取未知结构的输入参数并整体复用

解决ADF管道动态接收未知结构参数的方案

核心方法:利用@pipeline().parameters获取全部输入

不管第三方传入的参数结构如何变化,你都可以在ADF管道中直接使用表达式@pipeline().parameters来获取所有传入的参数,返回的是包含所有键值对的JSON对象,无需为每个可能的键预先创建管道参数。

具体应用场景

1. 将全部参数存入变量

创建一个Object类型的变量(推荐,避免字符串转义问题),在Set Variable活动的「值」中填写:

@pipeline().parameters

如果需要将这个参数集合包裹到指定JSON结构中,比如生成{"request": 第三方参数, "metadata": {"source": "third-party", "time": "当前时间"}},用createObject函数更安全:

@createObject(
    'request', pipeline().parameters,
    'metadata', createObject(
        'source', 'third-party',
        'time', utcNow()
    )
)

2. 在Web活动中直接生成请求体

如果Web活动需要调用外部服务,直接将目标JSON结构写在「请求体」中即可。比如要把第三方参数作为payload字段传入:

@createObject(
    'payload', pipeline().parameters,
    'action', 'submit'
)

ADF会自动将这个对象序列化为JSON字符串作为请求体发送。

关键注意事项

  • 触发管道时,第三方需通过ADF的管道触发REST API传递参数,请求体格式示例:
    {
        "parameters": {
            "key1": "value1",
            "key2": 123,
            "key3": {"subKey": "subValue"}
        }
    }
    
    这里的parameters字段可以包含任意结构的键值对,无需与管道预先定义的参数匹配。
  • 避免使用字符串拼接生成JSON(除非必要),优先用createObject、createArray等函数,防止出现转义错误。

内容的提问来源于stack exchange,提问作者Falk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 16:07:07