gpt4 book ai didi

blockchain - 如何更深入地了解 chainlink req.add ("path") 请求的 JSON 主体?添加 2+ 路径

转载 作者:行者123 更新时间:2023-12-04 04:11:04 24 4
gpt4 key购买 nike

我可以通过 req.add("path", "chainlink") 获取 chainlink 路径的结果

但是,我想返回 "chainlink", "USD" 的价格值。输出的json有两条路径,如何到达第二条路径获取价格值?

  function requestLINKPrice() 
public
onlyOwner
{
Chainlink.Request memory req = buildChainlinkRequest(JOB, address(this), this.fulfill.selector);
req.add("get", "https://api.coingecko.com/api/v3/simple/price?ids=chainlink&vs_currencies=usd");
req.add("path", "chainlinkUSD");
req.addInt("times", 100);
sendChainlinkRequestTo(ORACLE, req, ORACLE_PAYMENT);
}

这是 API 的 JSON 响应

{
chainlink: {
usd: 3.78
}
}

最佳答案

您可以使用 copy adapter使用 copyPath 语法。

string[] memory copyPath = new string[](2);
copyPath[0] = "chainlink";
copyPath[1] = "USD";
req.addStringArray("copyPath", copyPath);

这是整个函数。

  function requestLINKPrice() 
public
onlyOwner
{
Chainlink.Request memory req = buildChainlinkRequest(JOB, address(this), this.fulfill.selector);
req.add("get", "https://api.coingecko.com/api/v3/simple/price?ids=chainlink&vs_currencies=usd");
string[] memory copyPath = new string[](2);
copyPath[0] = "chainlink";
copyPath[1] = "USD";
req.addStringArray("copyPath", copyPath);
req.addInt("times", 100);
sendChainlinkRequestTo(ORACLE, req, ORACLE_PAYMENT);
}

关于blockchain - 如何更深入地了解 chainlink req.add ("path") 请求的 JSON 主体?添加 2+ 路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61719400/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com