闡述“區塊鏈系統開發”專案方案
區塊鏈是一個不可變的記錄鏈,稱為塊,可促進交Y,有助於跟蹤Z產並記錄資料和檔案,其具有去中心化、不可篡改、全程留痕、集體維護、公開透明等特點,基於這些特點,區塊鏈技術可以開√發出自帶信任體系特徵的系統,實現多個主體之間的協作信任與一致行動。
在這次的實戰演練中,我們將介紹如何讓你的智慧合約連線到Twitter API。具體來說,我們將解釋如何從智慧合約中發出一條推文,但是圍繞社交媒體進行資料分析和智慧合約的執行所展示出來的可能性卻是無限的。
建構函式
pragma solidity^0.6.12;
import"
contract ChainlinkTwitter is ChainlinkClient{
address private oracle;
bytes32 private jobId;
uint256 private fee;
uint256 public statusCode;
//only the contract owner should be able to tweet
address payable owner;
modifier onlyOwner{
require(msg.sender==owner);
_;
}
constructor()public{
setPublicChainlinkToken();
oracle=0x4CF0507fe3236DedDbE6cD18508f35D9b5e16e7C;//oracle address
jobId="948db03c9576480a8fa0545bee5b28ab";//job id
fee=11*10**17;//1.1 LINK
owner=msg.sender;
}
我們從熟悉的ChainlinkClient匯入和繼承開始。匯入ChainlinkClient合約包含了構建請求、提交給一個或多個Chainlink節點,並接收回復所需的所有功能。只需定義你選擇的oracle地址,該節點為其Twitter Job提供的作業規範ID(job spec ID),並定義該節點處理請求所需的費用。此外,我們還定義了onlyOwner修飾符,這樣只有建立合約的地址才能透過這個合約發推特。
Tweet函式
//tweets the supplied string
function tweet(string memory twt)public onlyOwner{
Chainlink.Request memory req=buildChainlinkRequest(jobId,address(this),this.fulfill.selector);
//req.add("endpoint",");
req.add("status",twt);
req.add("copyPath","statusCode")
sendChainlinkRequestTo(oracle,req,fee);
}
//callback function
function fulfill(bytes32 _requestId,uint256 _statusCode)public recordChainlinkFulfillment(_requestId){
statusCode=_statusCode;
}
構建了合約之後,發推特就非常簡單了。tweet函式接收要推送的字串,建立請求結構體,並將其提交給定義的Chainlink節點。請求結構中需要兩個欄位:status和copyPath。status,即我們希望釋出的推文,在Twitter外部介面卡中被定義為一個輸入,該節點將執行它來完成這項工作。而copyPath則是所有Chainlink節點支援的預設介面卡的一部分,它告訴節點如何解析JSON輸出。此外,endpoint可以指定為不同的Twitter端點,具有不同的功能,但介面卡默即可釋出推文狀態,因此目前不需要關心這一引數。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70016646/viewspace-2942652/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 區塊鏈投票系統開發方案,區塊鏈投票系統開發原始碼區塊鏈原始碼
- 區塊鏈社交即時通訊系統開發方案,區塊鏈系統開發區塊鏈
- 區塊鏈零擼專案系統開發|挖礦專案開發區塊鏈
- 關於/區塊鏈系統開發|(成熟技術)/區塊鏈系統開發介紹方案區塊鏈
- 淺談區塊鏈DAPP專案系統開發模式詳細方案區塊鏈APP模式
- 區塊鏈多商戶商城開發上線版丨區塊鏈多商戶商城系統開發(專案及方案)區塊鏈
- 區塊鏈聊天通訊直播系統開發app,區塊鏈應用開發方案區塊鏈APP
- 區塊鏈商品溯源平臺開發,區塊鏈公共服務系統開發方案區塊鏈
- 從區塊鏈底層技術開發角度闡述LikeLib技術區塊鏈
- 區塊鏈服務應用系統開發搭建分析 | 區塊鏈系統專案搭建規則解析區塊鏈
- 區塊鏈錢包系統開發:區塊鏈支付平臺系統開發區塊鏈
- 區塊鏈數字錢包系統開發方案區塊鏈
- 世鏈財經|區塊鏈專案開發指南,如何開發一款區塊鏈專案區塊鏈
- NFT區塊鏈遊戲系統開發技術方案丨NFT區塊鏈遊戲系統開發原始碼詳解區塊鏈遊戲原始碼
- 上海區塊鏈系統開發/區塊鏈交易所繫統開發區塊鏈
- 區塊鏈系統開發,區塊鏈實體行業應用落地方案區塊鏈行業
- 區塊鏈落地應用開發,區塊鏈IM社交直播系統解決方案區塊鏈
- 區塊鏈系統開發解決方案,交易所開發區塊鏈
- 關於區塊鏈趣步模式DAPP系統開發專案方案(成熟技術)區塊鏈模式APP
- 區塊鏈商城系統開發區塊鏈
- 南京區塊鏈智慧合約交易系統開發方案區塊鏈
- 企鵝農場區塊鏈遊戲系統模式開發方案區塊鏈遊戲模式
- 區塊鏈商品溯源系統開發方案,區塊鏈公共服務平臺建設區塊鏈
- 關於區塊鏈代幣DAPP專案系統開發(Demo)區塊鏈APP
- 鏈遊專案系統開發方案設計
- 孵化區塊鏈全面WEB3.0專案系統開發技術方案丨(成熟開發語言)區塊鏈Web
- 區塊鏈NFT農場遊戲專案系統開發技術定製方案(成熟技術)區塊鏈遊戲
- 淺談區塊鏈代幣技術系統開發專案方案(成熟合約技術)區塊鏈
- 區塊鏈公鏈系統開發與發展區塊鏈
- 區塊鏈落地應用開發,區塊鏈幣幣撮合交易系統開發區塊鏈
- 區塊鏈交易所繫統開發方案區塊鏈
- 區塊鏈交易所開發,公鏈系統開發區塊鏈
- DAPP區塊鏈挖礦專案系統開發丨智慧合約程式開發APP區塊鏈
- 區塊鏈農產品溯源系統開發,區塊鏈公共服務平臺建設方案區塊鏈
- 區塊鏈農產品溯源系統開發解決方案,區塊鏈底層平臺搭建區塊鏈
- 區塊鏈錢包支付系統:區塊鏈支付平臺開發區塊鏈
- 闡述量化合約系統開發技術方案丨合約量化系統開發邏輯分析
- matic馬蹄鏈合約DAPP技術開發/區塊鏈專案系統開發Demo流程APP區塊鏈