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

ATestnetConsumer.sol中req变量与memory path数组在Chainlink作业中的作用?

Chainlink请求中req变量与path数组的作用(节点执行维度)

1. req变量的作用

req是Chainlink标准请求结构体的实例,是你向Chainlink节点发起任务的完整参数载体,节点执行作业时会读取该结构体的所有配置来运行任务,核心作用包括:

  • 绑定基础校验参数:通过buildChainlinkRequest初始化时就写入了三个核心信息:要触发的节点作业ID、接收结果的消费者合约地址、回调函数选择器,节点收到请求后首先校验这三个参数的合法性,再匹配到对应的作业执行流程
  • 存储自定义任务参数:你通过req.add()、req.addStringArray()等方法写入的所有键值对,都会被节点作业管道读取为运行参数,比如代码中添加的get参数会告诉节点的HTTP请求任务要调用的API地址,path参数会被传递给JSON解析任务作为配置
  • 承载回调规则:节点完成作业后,会基于req中绑定的合约地址和回调函数选择器,把提取到的结果回传给你的消费者合约。

2. path字符串数组的作用

你已经明确它是控制jsonparse函数的运行逻辑,补充节点执行层面的细节:
节点的HTTP请求任务拿到API返回的JSON数据后,会把path数组的元素按顺序作为JSON的嵌套键逐层取值,你示例中的路径就是依次读取RAW→ETH→USD→LASTMARKET对应的字段值。如果你自定义作业的JSON解析规则有特殊需求,直接调整数组的长度和元素值即可,节点会完全按照你传入的path参数提取目标值,不需要修改节点侧的作业配置,可实现请求级的解析规则自定义。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 17:36:06