Chainlink

呼叫 Chainlink Oracle 時不支持的協議方案

  • June 9, 2021

我剛剛部署了一個智能合約,它使用來自我的 chainlink oracle 的 get 請求。在我的契約中,它被稱為如下所示:

    Chainlink.Request memory request = buildChainlinkRequest(jobId, address(this), this.fulfill.selector);
   

   request.add("httpget", "http://xx.xxx.xx.xxx:3000/heartrate/api?code=1&zone=2&timeInterval=1d");

在我的 Chainlink Oracle 中,我收到以下錯誤:

在此處輸入圖像描述

我懷疑這可能與我在我的 Chainlink 作業規範中使用 httpgetwithunrestrictednetworkaccess 作為任務參數有關,並且它僅支持 Web 類型而不支持執行日誌?

在您的智能合約中,更改:

request.add("httpget", "http://xx.xxx.xx.xxx:3000/heartrate/api?code=1&zone=2&timeInterval=1d");

request.add("get", "http://xx.xxx.xx.xxx:3000/heartrate/api?code=1&zone=2&timeInterval=1d");

要在您的智能合約中使用適配器,您可以查看鍊鍊接適配器文件。使用httpgetwithunrestrictednetworkaccess與 相同的參數httpget,在這兩種情況下都是"get"

引用自:https://ethereum.stackexchange.com/questions/87411